| juju_le_barbare |
Salut,
Dites donc gcc 2.96 et je pense qu'il a pas mal de bugs... Enfin je crois...
J'en ai cité un dans un post hier, et là j'ai presque le même, autre version !
Ici j'ai ma fonction main(), dedans je peux utiliser des printf() sans '\n' à la fin de la chaîne et ça marche impecc.
Seulement dans le prog ci-dessous :
Code :
- #include <stdio.h>
- void main()
- {
- char *choix = new char[1];
- printf("salut la compagnie" );
- printf("Voulez vous 'jouer' ? (1 pour oui)\n" );
- fgets(choix, 2, stdin);
- if (choix[0] == 49)
- {
- char *a = new char[15], *b = new char[5], *c = new char[5], *d = new char[4096];
- printf("Allez on affecte des valeurs :\nAlors il me faut la variable a (15 caractères) :\n" );
- fgets(a, 16, stdin);
- printf("Alors il me faut la variable b (5 caractères) :" );
- fgets(b, 6, stdin);
- printf("Alors il me faut la variable c (5 caractères) :\n" );
- fgets(c, 6, stdin);
- printf("Alors il me faut la variable d (4096 caractères) :\n" );
- fgets(d, 4096, stdin);
- }
- else
- printf("Tant pis ...\n" );
- }
|
1/ le 'Tant pis' ne s'affiche que si il y a '\n' à la fin, sinon il ne s'affiche pas. Ce bug n'affecte que les printf à la fin ou après le 'if' (ou switch pour mon ancien post),
donc le "salut la compagnie" s'affiche très bien sans son '\n'...
2/ Il affiche 'Alors il me faut la variable a (15 caractères) :\n' systématiquement, mais il ne me laisse pas saisir 'a', il affiche juste en dessous la suite, c'est-à-dire
'Alors il me faut la variable b (5 caractères) :', et je peux saisir 'b', ensuite 'c' et 'd' sans problème... mais pas 'a' !!!
Je voudrais savoir si il s'agit bien de bugs ou si c'est moi qui ai loupé quelque chose !
Vraiment il se passe des choses bizarres ! |