Bonjour
Je souhaite mettre la taille de mon tableau à zero alors que je suis en pleine boucle:
J'ai reussi a initialiser tout les caracteres du tableau lors de la declaration et avec le memset.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 char mdc[100]="0"; char exit[4]="exit"; while(1) { if(strcmp(mdc,exit)==0) {break;} read(fdaccept,mdc,sizeof(mdc)); printf("Message recu du client:%s \n",mdc); memset(mdc,'\0',sizeof(mdc)); }
Mais je souhaite mettre la taille de mon tableau à zero.
Fonctionnement de mon prog:
- Il compare mdc(="0") avec exit(="exit")
- Si mdc == exit on sort de la boucle
- Sinon on lit les données recus, on les affiches et on remet à zero les champs du tableau
Le probleme:
- si mdc ="banane"
- si mdc ="exit"
je ne peux pas sortir de ma boucle
car mdc != exit
Je suppose que le prog l'interprete comme cela:
si mdc ="banane" -> mdc = "banane"
si mdc ="exit" -> mdc ="exitne" ou mdc="exit\0\0"
Voilà pourquoi je souhaite reduire la taille de mon tableau ou s'il ya une autre solution je suis ouvert.
Je vous remercie d'avoir lu entierement ce poste.
Partager