Salut!
Je souhaite pouvoir entrer au clavier une chaine de caractere au format suivant:
ch1 ch2:ch3
ou
ch1 ch2-ch3
j'arrive a récupérer ch1, sauter l'espace, récupérer ch2, récupérer la ponctuation entre ch2 et ch1, mais je ne récuère que le premier caractère de ch3...
Voici le code:
ou s est la chaine entrée lu au clavier, s2 cette meme chaine a laquelle on a enlevé tt ce qui suit l'espace (juste ch1 dans l'exemple), temp <=> ch2, punct<=> : ou - et fin <=> ch3.
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 int reco_com(char s[],char s2[],char temp[],char punct[], char fin[]) { int i,k,j,l; char s1[256]; for(i=0;i<32;i++) { if(isspace(s[i])!=8192) s1[i]=s[i]; else { for(k=i+1;k<32;k++) { if(ispunct(s[k])!=4) temp[k-i-1]=s[k]; else { punct[0]=s[k]; for(l=k+1;k<32;k++) fin[l-k-1]=s[l]; goto suite; } } goto suite; } } suite: j=strcmp(s1,s2); return j; }
Partager