Wir versuchen, ncurses-Bibliothek zu verwenden, um ein Terminalspiel zu erstellen. Die Funktion initscr() gibt irgendwie eine Fehlermeldung ohne zusätzliche Information zurück. Wir sind nicht sicher, warum initscr() einen Fehler wirft, und was wir tun sollten, um es zu debuggen.Fehler der Funktion initscr() in der Bibliothek ncurses.h mit xcode
0
A
Antwort
1
Ich vermute, dass clear() (die Wclear (Stdscr) aufruft) stdscr verwendet, bevor es erstellt wurde. In meinem letzten ncurses Projekt erfasst ich den folgenden Kommentar (nicht sicher, von wo aus):
// To initialize the curses, the routine initscr() or
// newterm() must be called before any of the other routines
// that deal with windows and screens are used. The routine
// endwin() must be called before exiting.
Versuchen Sie kommentieren aus der „clear()“, das ich Sie nicht denken, sowieso brauchen, da es eines der manchmal nervende Dinge, die ncurses zu viel macht.
+0
Ja, ich würde 'initscr()' vor 'clear()' verschieben, aber es kommt zur selben Sache. –
Was ist der Fehler? –
Was macht 'clear()'? Bitte bearbeiten Sie Ihren Beitrag mit dem Code. –
Siehe den Abschnitt [Initialisierung] (http://invisible-island.net/ncurses/man/ncurses.3x.html#h3-Initialization) im ncurses-Handbuch. –