Simples C-Programm zum Datei drucken läuft nicht

Moin,

ich versuche folgendes Programm zum Laufen zu bekommen (aus einem Tutorial abgetippt), das den Inhalt einer Datei ausdrucken soll, bekomme aber eine Fehlermeldung. Hat jemand Rat?

Quelltext:

/* drucken.c - Dieses Programm gibt ein Listeing mit Zeilennummern aus! */
#include
#include

void titel_anlegen (char * dateiname);

int zeile, seite;

int main (int argv, char * argc []) {

char puffer[256];
FILE * fp;

if ( argv 1 )
printf ("\f");

printf („Seite: %d, %s\n\n“, seite, dateiname );
}

Fehlermeldung:

C:\>drucken log.txt
Seite: 1, log.txt

1:
2: >
3: Install device(s)…
4: Exited with error code 0x800e .
5:
6: >
7: Preinstall device(s)…
8: Exited with code 0x0.
*
C:\>

Der Stern in der Zeile nach 8:… ist jedoch kein Stern sondern das „Weiblichkeits-Symbol“.

Vielleicht am Rande: ich afbeite mit win XP, Visual 6.0 SP6, habe versucht das Programm über die DOS-Shell und über „Ausführen“ zu starten. Mein Drucker ist an LPT1 angeschlossen und eingeschaltet.

Ich danke für Ratschläge.
Absoluter C-Anfänger
moe.

Hallo FlamingMoe,

ich versuche folgendes Programm zum Laufen zu bekommen (aus
einem Tutorial abgetippt), das den Inhalt einer Datei
ausdrucken soll, bekomme aber eine Fehlermeldung. Hat jemand
Rat?

Dein Programm macht genau, was es soll.
Es gibt den Inhalt von log.txt in
der Konsole (auf dem Bildschirm) aus, vorne
mit Zeilennummern und einem ‚\f‘ alle 55(?)
Zeilen.

Völlig o.k. Das ‚formfeed‘-Zeichen (0C hex)
ist das ‚weibliche‘ nichtdarstellbare
Zeichen, siehe http://www.asphelper.de/referenz/ASCIIANSI.asp#31.

Was sollte es denn Deiner Meinung nach tun?

Grüße

CMБ

Hallo FlamingMoe,

ich versuche folgendes Programm zum Laufen zu bekommen (aus
einem Tutorial abgetippt), das den Inhalt einer Datei
ausdrucken soll, bekomme aber eine Fehlermeldung. Hat jemand
Rat?

Dein Programm macht genau, was es soll.
Es gibt den Inhalt von log.txt in
der Konsole (auf dem Bildschirm) aus, vorne
mit Zeilennummern und einem ‚\f‘ alle 55(?)
Zeilen.

Völlig o.k. Das ‚formfeed‘-Zeichen (0C hex)
ist das ‚weibliche‘ nichtdarstellbare
Zeichen, siehe
http://www.asphelper.de/referenz/ASCIIANSI.asp#31.

Was sollte es denn Deiner Meinung nach tun?

drucken

thx
moe.

Hallo FlamingMoe,

Was sollte es denn Deiner Meinung nach tun?

drucken

‚print/printf‘ bezieht sich im Programmiersprachenlateinkontext
immer zunächst auf „in die Konsole drucken“. Um das
Resultat Deines Programms auf einem „Druckergerät“ zu drucken,
brauchst Du die Ausgabe, so sie Deinen Wünschen entspricht,
einfach nur an den Gerätenamen des Druckers umzuleiten

 C:\\> drucken log.txt \> lpt1

sofern der Drucker lpt1 heisst. Willst Du das
Resultat in einer weiteren Datei ablegen, dann

 C:\\> drucken log.txt \> andere.txt

Falls Dein Compiler/Betriebssystem das
unterstützt, kannst Du in C auch direkt drucken,
statt

 printf("Text ...

heisst es dann

 fprintf(stdprn, "Text ...

siehe auch z.B: http://homepage.univie.ac.at/Heinz.Kabelka/edv-ueb/f…

Grüße

CMБ