Hoi,
Ik ben begonnen in het boek The C Programming Language. Er zitten rond pagina 18 een paar eenvoudige voorbeelden met getchar(), maar ik krijg andere functionaliteit dan volgens mij omschreven staat.
Ik heb zelf wel programmeer ervaring met PHP en Bash, maar C is nieuw voor me.
Dit is de code:
Wat het moet doen is het aantal regels wat ingetikt wordt weergeven. Maar ik kan alleen invoeren, en heb geen idee hoe af te sluiten. Ctrl-C breekt gewoon hard af. Ik krijg dus nooit de printf() te zien. Volgens mij moet er ergens een EOF ingevoerd worden, maar hoe verwachten ze dat?
Wat doe ik verkeerd? Of is er wat veranderd sinds 1988?
Ik gebruik Linux/Debian/gcc.
Ik ben begonnen in het boek The C Programming Language. Er zitten rond pagina 18 een paar eenvoudige voorbeelden met getchar(), maar ik krijg andere functionaliteit dan volgens mij omschreven staat.
Ik heb zelf wel programmeer ervaring met PHP en Bash, maar C is nieuw voor me.
Dit is de code:
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| #include <stdio.h> countlines() { int c, nl; nl = 0; while ((c = getchar()) != EOF) { if (c == '\n') { nl++; } } printf("%d\n", nl); } main() { countlines(); } |
Wat het moet doen is het aantal regels wat ingetikt wordt weergeven. Maar ik kan alleen invoeren, en heb geen idee hoe af te sluiten. Ctrl-C breekt gewoon hard af. Ik krijg dus nooit de printf() te zien. Volgens mij moet er ergens een EOF ingevoerd worden, maar hoe verwachten ze dat?
Wat doe ik verkeerd? Of is er wat veranderd sinds 1988?
Ik gebruik Linux/Debian/gcc.