Wątek przeniesiony 2014-07-16 23:06 z C/C++ przez ŁF.

Funkcja zliczajaca wiersze wyjsciowe

0

Poniższy program, nie działa. Czy ktoś może wie dlaczego?

#include<stdio.h>

// Zlicz wiersze wejsciowe

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

dodanie znacznika <code class="c"> - furious programming

0

To ma sens dzięki ;) Ale... to nie rozwiązuje mojego problemu. CZEMU mój sposób nie działa?

Btw. jest to przykład z książki Język ANSI C Ritchiego...

0

Po wpisaniu dowolnego ciągu znaków i naciśnięciu klawisza enter "nie dzieje się nic", tak jakby funkcja printf nie zadziałała...

0

Chociaż teraz odkryłam, że jeśli kliknę klawisz F6 na ekranie wypisuje się: ^Z, po czym, gdy kliknę enter pojawia się prawidłowa liczba wierszy...

0

printf działa jeden raz po zakończeniu wejścia - na pustym wierszu <Ctrl-Z><Enter>

0

Komenda <ctrl-z> działa dokładnie tak samo jak naciśnięcie klawisza F6. I działa nie tylko na pustym wierszu! Ok, dzięki za pomoc ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1