PDA

View Full Version : [C] Problema programma conta linee!


darkmax
18-03-2005, 16:11
Allora sto imparando or ad usare il C con il libro il libro "linguaggio C" di Kernighan.. ho appena iniziato e sono al programma:

#include <stdio.h>
#include <stdlib.h>

main ()
{
int c, nl;

nl = 0;
while ((c = getchar()) != EOF)
if (c == '\n')
++nl;
printf("%d\n", nl);

system("PAUSE");
}

ma come mai non mi stampa a video nulla.. non dovrebbe contare le linee??

uffanoia
18-03-2005, 16:53
Ciao
secondo me funziona benissimo..

uffanoia

uffanoia
18-03-2005, 16:55
EOF in linux si fa con ctrl+d
EOF in window si fa con ctrl+z e poi invio (mi sembra di ricordare)

uffanoia

3nigma666
19-03-2005, 13:16
lui conta,ma se non gli dai un file dal quale contare le linee..... se sei in linux basta ke fai una pipe dalla shell

o altrimenti dai con input il file
per aprire un file in modalita lettura devi fare cosi:

FILE * file;

if ((file = fopen (buffer,"r"))==NULL)
exit(1);

codice tuo....

kk3z
19-03-2005, 14:20
#include <stdio.h>
#include <stdlib.h>

main ()
{
int c, nl;

nl = 0;
while ((c = getchar()) != EOF)
{
if (c == '\n')
++nl;
printf("%d\n", nl);
}

system("PAUSE");
}

cosė funziona?

pavimento
19-03-2005, 18:23
Ciao
io l'ho provato e mi funziona.
Perche' dargli un file da cui leggere?
I caratteri vengono letti dallo standard i/o.

3nigma666
20-03-2005, 11:04
pensavo ke volessi fargli leggere le linee di un file piutosto e non dello standard out ..sorry :(