Salut à tous,

j'ai le programme suivant:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
typedef struct {
        char *pszCheminCommun;
        char *pszCheminHome;
} ParametresLocaux;
 
 
int main(......){
 
   int iRet = 0;
   ParametresLocaux stParametre;
 
   iRet = foo( &stParametre );
 
}
 
int foo( ParametresLocaux *pstParametres){
   char szTest[]="TATA|TITI|TOTO";
 
   memset ((void *)pstParametre, (int) NULL, sizeof (ParametresLocaux));
 
   // La ligne suivante (A) ne fonctionne pas
   pstParametre->pszCheminCommun = strtok( szTest, "|" );
 
   // La ligne suivante (B) ne fonctionne pas
   strcpy( pstParametre->pszCheminCommun, strtok( szTest, "|" ) );
 
   // La ligne suivante (C) fonctionne
   pstParametre->pszCheminHome = "Toto";
 
   return 0;
 
}
je ne comprend pas pourquoi les lignes A et B ne fonctionnent pas, alors que la ligne C fonctionne ???


d'avance merci