histoire de char * qui fait Segmentation fault (core dumped)
Bonjour,
Pour m'adonner aux joies du C (plus particulièrement les pointeurs) j'ai fait le code suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| #include <stdio.h>
#include <stdlib.h>
#include <string.h>
void deuxChaine(char *src)
{
/* ligne 1*/
strcpy(src,"babar");
}
int main()
{
char *s;
s="elephant";
deuxChaine(s);
printf("la première chaine est %s",s);
printf("=============");
return 0;
} |
mais après avoir lu ça http://c.developpez.com/faq/?page=strings#STRINGS_pointeur
la ligne 1 est devenue:
Code:
strcpy(src,"babar");
le problème c'est lors de l'exécution qui me met un magnifique segmentation fault (core dumped) alors d'après ce que j'ai lu c'est un problème de mémoire mais je ne voie vraiment pas, si vous pouviez me donner une piste.
PS: Le but du programme c'est de remplacer une chaîne par une autre chaîne qui se trouve dans une fonction