bonjour a tous ,tout d'abors je poste mon code:
voila en fait il sagit de réécrire la commande colrm , le probleme c'est que le test dans le "while" ne seffectue pas apres execution de :
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 #include <stdio.h> #include <stdlib.h> int main (int argc , char *argv[]){ int car; char chaine[81]; int i; //pr verif on affiche la chaine lue a modifier: fgets(chaine,sizeof chaine,stdin); printf(" la chaine : %s", chaine ); if((argc > 3) || (argc == 1)){ printf("mauvais nbr de parametres"); }//if putchar('\n'); i=0; putchar('\n'); if(argc == 2){ while ( ( i < *argv[1] ) && ((car = chaine[i]) != '\0') ) { putchar(car); i++; }//while }//if putchar('\n'); exit(EXIT_SUCCESS); }//fin prog
jobtiens:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2>>gcc -o mcolrm mcolrm.c >>./mcolrm 3 <mcolrm.c
alors que manifestement je voudrais obtenir:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 la chaine : #include <stdio.h> #include <stdio.h>
le reste etant coupé...
Code : Sélectionner tout - Visualiser dans une fenêtre à part #in
je comprends que le probleme vient du fait que je ne peux pas comparer "i" avec
"*argv[1]" et qu'il faudrait caster l'un des deux mais jai beau essayer de mettre (int) devant le argv[1] ca ne marche pas
peut on maider plz?
Partager