Pour ce code:"déclaration implicite" avertissement
int i=0; char **mainp;
for(i=0;i<2;++i)
{
mainp[i]=malloc(sizeof(char)*200);
if(!scanf("%[^#],#",mainp[i]))
break;
if(i<2)
scanf("%[^#],#",mainp[i]);
}
GCC émet les avertissements:
warning: implicit declaration of function ‘scanf’
warning: incompatible implicit declaration of built-in function ‘scanf’
warning: ‘mainp’ may be used uninitialized in this function
Et je reçois une erreur de segmentation lors de l'exécution
entrée: (P> Q) (Q> R), - R # -P sortie: (P> Q), (Q> R), - R (emplacement de empt)
je devrait me donner (P> Q), (Q> R), - R -P // Où dois-je fixer dans mon code tel qu'il me donne attendu // sortie
double possible de [Pourquoi dois-je recevoir un avertissement à chaque fois que j'utilise malloc?] (http://stackoverflow.com/questions/1230386/why-do-i-get-a-warning-everytime-i-use-malloc) – sepp2k