Kernighan/Ritchie > EOF

Post Reply
Message
Author
Newbie

Kernighan/Ritchie > EOF

#1 Post by Newbie »

Hi Leute!
Habe o.g. Buch und bei EOF (End of File)
bringt mein Compiler (Gnu C) eine Fehler-
meldung heraus. Die ersten Prgramme (hello world, Umrechnung Fahrenheit zu Celsius)
klappen ja noch. Aber im Abschnitt nuetzliche
Programme Zeichen Eingabe und Ausgabe motzt
der Compiler EOF an. Das Programm liest die
Zeichen ein aber die Ergebnisse fehlen.
Danke im voraus.
Ciau

psychozapp
Posts: 85
Joined: 24. Jan 2000 14:28
Location: Nürnberg

Re: Kernighan/Ritchie > EOF

#2 Post by psychozapp »

Hi Newbie,

vielleicht könnte dir besser geholfen
werden, wenn du etwas konkreter würdest.
Ein Beispielcode, der nicht funktioniert
wäre praktisch.

TuX

Re: Kernighan/Ritchie > EOF

#3 Post by TuX »

Er meint das Beispiel-Programm in Kapitel "1.5 Ein Sammlung von nützlichen Programmen" Abschnitt "Zeichen Eingabe und Ausgabe" aus dem Buch "Programmieren in C" von Kernighan/Ritchie
(Bei mir Seite 16/17)

<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
#include <stdio.h>

int main(void) /* Kopierprogramm, Version 1 */
{
int c;
c = getchar();
while (c != EOF)
{
putchar(c);
c = getchar();
}
return 0;
}
</font><hr></pre></blockquote>

Das abgedruckte Beispiel hat bei mir korrekt funktioniert. Allerdings fällt mir gerade nicht ein wie Du per Tastatur ein EOF erzeugen kannst.
Evt. hast Du vergessen stdio.h zu includieren?

Gemäss dem Buch muss evt. noch eine define-Zeile für EOF eingetragen werden:
#define EOF -1
oder
#define EOF 0

TuX

Re: Kernighan/Ritchie > EOF

#4 Post by TuX »

> Allerdings fällt mir gerade nicht ein wie Du per Tastatur ein EOF erzeugen kannst.

Ctrl-Z bzw. Strg-Z drücken

User avatar
hjb
Pro-Linux
Posts: 3264
Joined: 15. Aug 1999 16:59
Location: Bruchsal
Contact:

Re: Kernighan/Ritchie > EOF

#5 Post by hjb »

Hi,

halt! Unter Unix ist das CTRL-d.

Gruß,
hjb
Pro-Linux - warum durch Fenster steigen, wenn es eine Tür gibt?

Jochen

Re: Kernighan/Ritchie > EOF

#6 Post by Jochen »

Jau, CTRL-Z stoppt in einer Shell mit Job-Control den laufenden Prozess und holt die Shell wieder her. Praktisch, wenn man mal ein & bei lange laufenden Aufrufen vergessen hat:

$ find / >/dev/null 2>&1
<CTRL-Z>
$ bg %%

Newbiee

Re: Kernighan/Ritchie > EOF

#7 Post by Newbiee »

Hallo!
Danke fuer die Antworten!
Habe #define EOF -1 vergessen.

Ciau

Post Reply