Seite 1 von 2
					
				Conio.h Linux
				Verfasst: Sa Feb 14, 2009 8:34 pm
				von soufian88
				Ich habe mal eine Frage und zwar: 
Gibt es unter Linux eine Bibliothek die Conio.h ähnelt und zu Verfügung stellt ?
Mfg
soufian
			 
			
					
				Re: Conio.h Linux
				Verfasst: Sa Feb 14, 2009 8:43 pm
				von fat-lobyte
				Sie heißt ncurses. 
Das und google sollte dir genug Informationen geben um danach zu suchen.
Ein Tipp von jemandem, der sich schon drüber gedanken gemacht hat:
Verwende lieber eine echte GUI, wie z.B. GTK+ oder wxWidgets. 
Konsolenbasierte Grafik ist NICHT leichter als ein vollwertiges Grafiktoolkit.
			 
			
					
				Re: Conio.h Linux
				Verfasst: Sa Feb 14, 2009 8:45 pm
				von soufian88
				Sie heißt ncurses
Ist diese Bibliothek auch unter Gcc vorhanden ?
 
			
					
				Re: Conio.h Linux
				Verfasst: Sa Feb 14, 2009 8:48 pm
				von nufan
				Hast du das 
hier schon gesehen?
Mal anders gefragt: Welche Funktionen von conio.h brauchst du?
Hier findest du was für clrscr ():
http://forum.proggen.org/viewtopic.php?f=21&t=38
soufian88 hat geschrieben:Ist diese Bibliothek auch unter Gcc vorhanden ?
Wenn du sie runterlädst und in dein Programm miteinbindest, dann schon. Ich weiß nicht, ob sie schon standardmäßig dabei ist. Einfach mal in Synaptic nach "ncurses" suchen.
 
			
					
				Re: Conio.h Linux
				Verfasst: Sa Feb 14, 2009 8:55 pm
				von fat-lobyte
				soufian88 hat geschrieben:Sie heißt ncurses
Ist diese Bibliothek auch unter Gcc vorhanden ?
 
Eine Bibliothek ist niemals unter einem Compiler vorhanden. Bibliotheken sind ein Haufen zusammenhängender Funktionen, die einem Zweck dienen, und zwar einem eigenständigen Programm (oder anderen Bibliotheken) Funktionen zur Verfügung zu stellen.
Wenn du fragst ob die Bibliothek mit GCC funktioniert:
Wahrscheinlich schon, wenn es eine Linuxbibliothek ist und der Standardcompiler so ziemlich jeder Linuxdistribution GCC ist.
Wenn du fragst wo du die Bibliothek herkriegst:
Entweder von der Webseite runterladen und selbst kompilieren (nicht empfohlen)
oder die verpackte Version deiner Distribution verwenden (empfohlen).
Beispielsweise haben die Distributionen Debian und Ubuntu ein Paket "libncurses5-dev", das alle benötigten header und bibliotheken enthält.
Um die Bibliothek zu erlernen, verwende entweder die Dateien, die bei der Bibliothek dabei waren (z.B. /usr/share/doc/libncurses5-dev/*) oder verwende das Howto von tldp: 
http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ 
			
					
				Re: Conio.h Linux
				Verfasst: Sa Feb 14, 2009 9:00 pm
				von soufian88
				"libncurses5-dev"
Das ist genau was ich brauche. 
 
 
Dank dir 

 
			
					
				Re: Conio.h Linux
				Verfasst: Sa Feb 14, 2009 9:06 pm
				von soufian88
				jetzt wollte ich das Programm kompilieren 
Code: Alles auswählen
#include <stdio.h>
#include <ncurses.h>
 
int main()
{
  char eingabe;
 
  do
  {
    eingabe = getch();
    printf ("Taste %c wurde gedrückt. ASCII-Code: %d\n",eingabe,eingabe);
  }
  while (eingabe != 27);
 
  return 0;
}
dann zeigt bei der Kompilierung mir so eine Fehlermeldung:
/tmp/ccqJHepO.o: In function `main':
Funktionen.c:(.text+0x12): undefined reference to `stdscr'
Funktionen.c:(.text+0x1a): undefined reference to `wgetch'
collect2: ld gab 1 als Ende-Status zurück
 
 
   
   
  
 
			
					
				Re: Conio.h Linux
				Verfasst: Sa Feb 14, 2009 9:16 pm
				von +Fuss+
				Das heißt das er die Funktionen nicht kennt.
Wahrscheinlich musst du beim Kompilieren noch Libs und Header manuell hinzufügen.
Formel für Pi????
MfG Fuss
			 
			
					
				Re: Conio.h Linux
				Verfasst: Sa Feb 14, 2009 9:19 pm
				von soufian88
				doch jetzt hat er es erkannt ich musste nur 
Das
 in ein 
 umwandeln.
Eigenartig. 

 
			
					
				Re: Conio.h Linux
				Verfasst: Sa Feb 14, 2009 9:31 pm
				von nufan
				soufian88 hat geschrieben:doch jetzt hat er es erkannt ich musste nur 
Das
 in ein 
 umwandeln.
Eigenartig. 

 
Tja, nur ist getchar ein anderer Befehl als getch.
In vielen Fällen reicht getchar aus, bei anderen gehts nicht ohne getch (oder eine andere externe Lib).
BTW: Für getchar brauchst du kein ncurses. Das ist schon in stdio.h...