Probleme sur type char en c
Fermé
milou43
Messages postés
13
Date d'inscription
mardi 24 août 2010
Statut
Membre
Dernière intervention
2 juin 2011
-
11 oct. 2010 à 18:32
ydurce Messages postés 78 Date d'inscription samedi 9 octobre 2010 Statut Membre Dernière intervention 12 décembre 2010 - 12 oct. 2010 à 00:56
ydurce Messages postés 78 Date d'inscription samedi 9 octobre 2010 Statut Membre Dernière intervention 12 décembre 2010 - 12 oct. 2010 à 00:56
A voir également:
- Probleme sur type char en c
- Coco char - Accueil - Réseaux sociaux
- Clear type - Guide
- Changer le type de fichier - Guide
- Type de ram - Guide
- Indiquez l'unité pour la taille de ces fichiers. type document texte brut taille 8,1 ?? première réponse à trouver longueur 8085 caractères type image jpeg taille 3,0 ?? deuxième réponse à trouver dimension 3776 × 2124 px type vidéo mpeg-4 taille 1,1 ?? troisième réponse à trouver durée 02:01:15 - Forum Google Chrome
3 réponses
ydurce
Messages postés
78
Date d'inscription
samedi 9 octobre 2010
Statut
Membre
Dernière intervention
12 décembre 2010
18
11 oct. 2010 à 18:41
11 oct. 2010 à 18:41
bonjour,
au lieu de scanf, utiliser gets(char *) qui recupére la ligne entrée.
au lieu de scanf, utiliser gets(char *) qui recupére la ligne entrée.
ydurce
Messages postés
78
Date d'inscription
samedi 9 octobre 2010
Statut
Membre
Dernière intervention
12 décembre 2010
18
11 oct. 2010 à 18:52
11 oct. 2010 à 18:52
quelques petites remarques sur le style:
- "&*nbrEleve" est équivalent à "nbrEleve" qui est un pointeur sur un int
- "&_eleve[i]." peut s'écrire "_eleve[i]->" qui est plus habituel.
- tester "*nbrEleve "par rapport à "Imax" pour éviter un dépassement de tableau
- en C, les indices d'un tableau de dim n vont de 0 à n-1.
bonne soirée
- "&*nbrEleve" est équivalent à "nbrEleve" qui est un pointeur sur un int
- "&_eleve[i]." peut s'écrire "_eleve[i]->" qui est plus habituel.
- tester "*nbrEleve "par rapport à "Imax" pour éviter un dépassement de tableau
- en C, les indices d'un tableau de dim n vont de 0 à n-1.
bonne soirée
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
11 oct. 2010 à 22:50
11 oct. 2010 à 22:50
&_eleve[i]." peut s'écrire "_eleve[i]->" qui est plus habituel.
Non. _eleve[i]-> signifie *_eleve[i].
Cdlt,
Non. _eleve[i]-> signifie *_eleve[i].
Cdlt,
ydurce
Messages postés
78
Date d'inscription
samedi 9 octobre 2010
Statut
Membre
Dernière intervention
12 décembre 2010
18
12 oct. 2010 à 00:14
12 oct. 2010 à 00:14
oups, autant pour moi.
de toute façon &_eleve[i] ne doit pas se compiler , _eleve[i]. (ou pourquoi pas &_eleve[i]->) oui
de toute façon &_eleve[i] ne doit pas se compiler , _eleve[i]. (ou pourquoi pas &_eleve[i]->) oui
milou43
Messages postés
13
Date d'inscription
mardi 24 août 2010
Statut
Membre
Dernière intervention
2 juin 2011
11 oct. 2010 à 18:56
11 oct. 2010 à 18:56
merci je vais essayer.
bonne soirée a toi aussi
bonne soirée a toi aussi
11 oct. 2010 à 22:46
Il vaut mieux utiliser fgets : char *fgets (char *s, int size, FILE *stream);
Cdlt,
12 oct. 2010 à 00:22
12 oct. 2010 à 00:25
12 oct. 2010 à 00:34
12 oct. 2010 à 00:49
Si chaine est défini comme char chaine[255] alors scanf("%s",chaine) est à éviter au même titre que gets(chaine).
Il faudrait utiliser scanf("254s",chaine)
C'est pour ça qu'on décommande l'utilisation de scanf pour les chaînes de caractère quand on débute et qu'on recommande fgets. Après, avec fgets, il ne faut pas non plus oublier de vider le buffer clavier s'il le faut.