[C] Je m'y remets ça doit être tout con mais je pige pas...
belgique
Posté le 18-10-2002 à 14:00:33
Code :
int ren(char *path)
{
size_t size;
char *newpath;
size=strlen(path);
newpath=malloc(size);
strcpy(newpath,path);
newpath[size-3]='\0';
strcat(newpath,"php" );
printf("%s\n",newpath);
free(newpath);
}
C'est juste une fonction de mon petit programme.
Voilà. gcc ne veut pas de mon malloc: assignement makes pointer from integer without a cast.
Publicité
Posté le 18-10-2002 à 14:00:33
YungMakko
Posté le 18-10-2002 à 14:16:07
ça ira bcp mieux comme ça:
Code :
newpath=(char*)malloc(size*sizeof(char));
de plus, pas besoin de rajouter le '\0', strcpy fait le boulot pour toi!
Message édité par YungMakko le 18-10-2002 à 14:17:01
---------------
In tartiflette, we trust!
belgique
Posté le 18-10-2002 à 14:17:37
le \0 est bon, c'est pas en fin de chaine . Merci pour le (*char). A chaque fois que je m'y remets , je fais les même conneries. UN grand merci.
belgique
Posté le 18-10-2002 à 14:18:27
et pour le sizeof dans mon cas il fera 1 donc no problemeo mêrme si c pas super propre
YungMakko
Posté le 18-10-2002 à 14:22:10
belgique a écrit a écrit :
et pour le sizeof dans mon cas il fera 1 donc no problemeo mêrme si c pas super propre
Oui c'est juste une habitude à prendre; c'est comme mettre son clignotant quand on veut tourner mais qu'on est le seul sur la route; ça sert finalement à rien, mon on le met par habitude, comme ça on oublie jamais quand c'est necessaire!