Bonjour ,
En découverte sur le c , j'ai du mal à saisir les fonctions sur les chaines de caractères. J'essaie de faire des fonctions d'extractions dans des chaines .
je ne saisi pas mon erreur voici le code utilisé avec ( lcc & dev-c++ ).
quelqu'un peut il me renseigner ?
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69 #include <stdio.h> #include <stdlib.h> #include <string.h> char *LignesCar ; char StrLigne[] ; char *LigneTab ; int Total ; int Compte( char *Ligne) { int car ; int CountCar=0 ; char *Mot=Ligne ; while ( *Mot !='\0') { Mot++; } return Mot-Ligne ; } int CountCar( char StrLigne[]) { int Index =0; while ( StrLigne[Index] !='\0') { Index ++; } return Index ; } int CountTab( char *LignesCar) { int Index =0; int Car ; while ( LignesCar[Index] !='\0') { Car=getchar(); if (Car=='\t') { Index++ ; } } return Index ; } int main(int argc,char *argv[]) { LigneTab="un deux trois quatre conq six sept huit neuf dix "; Total = 0 ; Total=Compte(LigneTab); printf("Compte nombre de caratere %d \n",Total); /* Ok */ Total=CountCar(LigneTab); printf("CountCar nombre de carateres %d \n",Total); /* Ok */ Total=CountTab(LigneTab); printf("CountTab nombre de carateres %d \n",Total); /*en attente pendant l'éxécution */ return 0; }
Cordialement .
Partager