Problem mit printw()
-
Hallo!
Ich schreibe gerade ein Programm, bei dem ich die Ausgaben mit curses verwalte. Dabei müsste ich eine int-Variable mit printw ausgeben:
... int anzahlFisch=DatenEinlesen("Anzahl der Fische",x*y/2,5); ... printw(anzahlFisch); ...
Daraufhin bekomme ich folgende Fehlermeldung:
hallowelt.c:103: Fehler: invalid conversion from `int' to `const char*'
hallowelt.c:103: Fehler: initializing argument 1 of `int printw(const char*, ...)'Kann ich eine int-Variable iregendwie mit printw() ausgeben??
Vielen Dank im Voraus...
-
Wieso liest du nicht die Dokumentation? man: printw(3)
-
Weil da nicht mehr drin steht, als ich schon weiß, nämlich dass printw const char* übergeben werden sollte. Ich habe aber eine int-Variable, aber irgendwie muss es doch möglich sein, dass ich die Variable trotzdem ausgeben kann, oder????
-
Das erste Argument muss ein Formatierungsstring sein. Sowas wie "Anzahl der Fische %d %d\n".
-
lisa2 schrieb:
Weil da nicht mehr drin steht, als ich schon weiß, nämlich dass printw const char* übergeben werden sollte.
Dann hast du aber nicht sehr weit gelesen. Der erste Satz:
The printw, wprintw, mvprintw and mvwprintw routines are
analogous to printf [see printf(3)].printf kennst du aber? Wenn nicht, da gibts sogar Beispiele in der Manpage.
-
Ah ja!! Jetzt klappt`s. Hab ganz vergessen, dass ich bei printw dasselbe machen könnte wie bei printf