salut ,
je suis entrein d'ecrire un programme en c ,le probleme c'est que syntaxiquement tous est correcte mais sans printf (qui est pour moi inutile ) mon programme ne fonctionne pas correctementmerci d'avance.
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 void decaler_gauche(char **m_a,int compteur){ int comp; char tmp[20]; for (comp=0;comp < strlen(*m_a)-compteur;comp++) { tmp[comp]=(*m_a)[comp+compteur]; } tmp[comp]='\0'; //printf(" %s \n",tmp); c'est ce printf qui resoud le probleme mais je ne le veut pas *m_a=tmp; } int suivant(char **m_a){ int longeur,compteur,v_retour,position=0; char tmp[20],*s; int state=0; longeur=strlen(*m_a); for(compteur=0;compteur<longeur;compteur++) { if(isdigit((*m_a)[compteur])) { tmp[compteur]=(*m_a)[compteur]; state=1; } else { if((*m_a)[compteur]=='.'&& state==1) { tmp[compteur]='\0'; decaler_gauche(m_a,compteur+1); return(4); } else { return(-1); } } } } int main(){ char *s="1.55.8.9.1.2"; int i; i=suivant(&s); printf("la chaine vaut %s \n",s);//sans le printf dans la fct decaler_gauche() ce printf //n'affiche pas la vrai valeur de s }
Partager