Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

petit problème avec exemple du livre de Khernighan

3 réponses
Avatar
David Remacle (clampin)
Bonjour,

J'ai un petit problème avec le code d'un des programme du livre de K&R
version française à la page 18.

#include <stdio.h>

/* compte les caractères en entrée ; 2eme version */

main()
{
double nc;

for (nc = 0; getchar() != EOF; ++nc)
;
printf("%.0f\n", nc);
}

normalement il devrait selon ce programme compter les caractères... or
il ne le fait pas... il affiche simplement les caractères... Quel est le
caractère équivalent à EOF car je suppose qu'il n'affiche le décompte
qu'a ce moment... sur mon Macos x comment faire ?

--
David Remacle - <http://www.clampin.com/> -
Membre de Macinside <http://www.macinside.be/>

3 réponses

Avatar
JKB
Le 30-01-2008, à propos de
petit problème avec exemple du livre de Khernighan,
David Remacle (clampin) écrivait dans fr.comp.lang.c :
Bonjour,


Bonjour,

J'ai un petit problème avec le code d'un des programme du livre de K&R
version française à la page 18.

#include <stdio.h>

/* compte les caractères en entrée ; 2eme version */

main()
{
double nc;

for (nc = 0; getchar() != EOF; ++nc)
;
printf("%.0fn", nc);
}

normalement il devrait selon ce programme compter les caractères... or
il ne le fait pas... il affiche simplement les caractères... Quel est le
caractère équivalent à EOF car je suppose qu'il n'affiche le décompte
qu'a ce moment... sur mon Macos x comment faire ?


Je ne connais pas MacOS X, mais comme c'est un Unix, essayez ctrl+D
(ou pomme+D ?).

Cordialement,

JKB

--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.

Avatar
David Remacle (clampin)
JKB ecrit:
Le 30-01-2008, à propos de
petit problème avec exemple du livre de Khernighan,
David Remacle (clampin) écrivait dans fr.comp.lang.c :
Bonjour,


Bonjour,

J'ai un petit problème avec le code d'un des programme du livre de K&R
version française à la page 18.

#include <stdio.h>

/* compte les caractères en entrée ; 2eme version */

main()
{
double nc;

for (nc = 0; getchar() != EOF; ++nc)
;
printf("%.0fn", nc);
}

normalement il devrait selon ce programme compter les caractères... or
il ne le fait pas... il affiche simplement les caractères... Quel est le
caractère équivalent à EOF car je suppose qu'il n'affiche le décompte
qu'a ce moment... sur mon Macos x comment faire ?


Je ne connais pas MacOS X, mais comme c'est un Unix, essayez ctrl+D
(ou pomme+D ?).

Cordialement,

JKB



A ben oui... mon Dieu, que je suis bête ! j'avais essayé ctrl-z, mais
bon là ça suspends le programme, mais j'avais pas essayé le ctrl-d....
bon sujet clos..
--
David Remacle - <http://www.clampin.com/&gt; -
Membre de Macinside <http://www.macinside.be/&gt;


Avatar
Jean Pierre Daviau
for (nc = 0; getchar() != EOF; ++nc)
;
printf("%.0fn", nc);
}


int main(void)
{
double nc;

for (nc = 0; getchar() != EOF; ++nc)
;
printf("%.0fn", nc-1);

return 0;
}


C'est quoi EOF? Quand le for cesse-t-il? Ça tourne en rond. Ctrl
+ z

Mauvais compte: nc-1