edoch nur mit einer Funktion, die sich aufhängt, bis ein Byte empfangen wird.
Funktion ? Bestimmt read(...)
Dann überprüfe erst ob ein Byte zum Lesen im Puffer vorhanden ist:
ioctl(fd, FIONREAD, &bytes);
Leon123 schrieb:
Ich setze mich gerade intensiv mit dem GNU-Emacs auseinander und bin immer faszinierter davon. Allerdings fehlen noch ein paar Features die den Emacs zu der perfekten IDE machen würden. Aber vielleicht gibt es dafür schon Lösungen die ich nur noch nicht gefunden habe.
Gibt es eine Möglichkeit zu einer Methodendeklaration in einer .h Datei gleich einen Stub in einer cpp Datei zu erzeugen? Ich finde das ewige hin und her springen einfach ein wenig lästig und bin sicher, dass es nicht nur mir so geht.
Das würde mich auch mal interessieren.
Aber was ich dir definitiv empfehlen kann ist cedet.
Das emacs wiki ist sonst auch eine gute Anlaufstelle, wenn man Erweiterungen sucht.
Hi!
Jou, wir lernen das Programmieren schon auch Praktisch...
Zumindest versuchen wir es...
Nein, mal im Ernst... Das Problem ist, dass die verschiedenen Fächer nicht immer deckungsgleich ablaufen, d.h., hier z.B. ist das C/C++ Programmieren dem Fach theoretischen Betriebssystemgrundlagen hinterher. Was die Sache leider nicht besser macht. So kommt es schon mal vor, dass man in einem Fach schon sehr weit in der Theorie vorangeschritten ist wärend man im praktischen Fach doch etwas hinterher hinkt. Dann ist man(n) in einer blöden Situation, weil man in die tiefen von Manuals vordringen muss, ohne die praktischen Hintergründe zu kennen.
So lernt man in der OS-Theorie eigentlich "nur" Semaphoren kennen, die binären und die allgemeinen (zählenden) Semaphore... Micro$oft macht aber in seiner API daraus Mutexe und Semaphoren... ... und diese kleinen aber feinen sprachlichen "Unterschiede" muss man(n) sich halt selbst erarbeiten, bzw. erkennen, verstehen, begreifen usw....
Deshalb meine etwas schwammige Fragestellung am Anfang.
Viele Grüße
Eljot
MAG schrieb:
Ich hab das auch mal einfach per Konsole erstellt:
g++ *.cpp -c
g++ -lGL -lSDL -lGLU *.o -o qm
Keine Fehler und nix. Lässt sich starten, alles funktioniert. Hä?
Also liegt es wohl an KDevelop!
Danke für den Denkanstoß Ponto, hab vorher nie auch nur daran gedacht, dass es an der IDE liegen könnte. Ich muss nur noch rausfinden was genau KDevelop macht, damit das zustande kommt.
KDevelop ruft auch nur make auf. Du kannst mal ein make clean und dann ein make im Verzeichnis machen. Dann siehst du die ausgeführten Befehle und eventuell den Fehler.
Wenn ich einer Multicastgruppe beitrete, und dort etwas versende, kommt dieses Paket dann wieder zurück?
Ich habe nämlich ein Programm, dass auf einer Multicastgruppe auf Nachrichten von anderen Programmen wartet und wenn ich ein Paket eines Programmes erhalten habe, sende ich ihm ein Paket als Antwort zurück, jedoch lese ich das Paket wieder ein, dass ich versendet habe.
Gibt es da irgend eine Möglichkeit, das zu unterbinden bzw. ganz einfach abzufangen?
kill -n signo pid
sendet Signal n an pid. mit
kill -l
kannst du dir unter Linux eine Liste der Signale mit deren Nummern anzeigen lassen...
Signal Handler kannst du in deinem Programm mit signal() bzw. sigaction() installieren. http://www.c-plusplus.net/forum/viewtopic-var-t-is-145198.html
http://www.opengroup.org/onlinepubs/007908799/xsh/sigaction.html
http://www.opengroup.org/onlinepubs/007908799/xsh/signal.html
Also wenn ich kill -USR1 <pid> zum ersten mal sende wird der handler ausgefuhrt wenn ich dann noch mal kill -USR1 <pid> sende wird der handler nicht mwehr ausgefuhrt.
Moin,
Kennt jamand eine Lib zum aulesen von konfig files (unix style)
und zwar in c++?
Sollte fuer GCC 3.3.5 (OpenBSD) funcen.
Das von boost ist wohl ned so gut geeignet.
thx,
Gg
Hi ProgChild,
ne klappt. Ist ja auch logisch, da es ja bisher auch ging und wenn man die eine Zeile auskommentiert - in den Trueteil für Scratchbox springt er ja eh nicht rein - funktioniert es ja immer noch.
timo@ubuntu:/$ pkg-config gtk+-2.0 gdk-2.0 gthread-2.0 --libs --cflags
-pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -pthread -lgtk-x11-2.0 -latk-1.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXinerama -lXi -lXrandr -lXext -lXcursor -lXfixes -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lXrender -lX11 -ldl -lgthread-2.0 -lglib-2.0
Ciao,
Timo
Der GCC kann keine 16Bit Programme. Selbst unter DOS (djgpp) werden 32Bit Programme erzeugt, die über einen Extender geladen werden.
Es gibt wohl nur einen unvollständigen und experimentellen Code für einen alten GCC: http://www.delorie.com/djgpp/16bit/gcc/
OpenWatcom dürfte dich interessieren.
Hallo,
Ich habe die neuere Ausgabe von APUE und finde es sehr gut. Du musst mal auf Amazon Marketplace schauen, ich habs da ganz billig gekauft und das Buch ist praktisch neu (Remittendenware). Ist allerdings auf Englisch, weiss nicht, obs davon auch eine deutsche Übersetzung gibt...
Advanced Programming in the Unix Environment | ISBN: 0201433079
lizamanizer schrieb:
Danke, ihr habt mir alle sehr geholfen. Ich würde mich sehr für da interessieren: Desktop-Environment (KDE) ... was gibt es darüber? Wurde das auch in c geschrieben?
google
Nur soviel: Es wird C++ und Qt benutzt
Hat sich erledigt! War ein Logikfehler von mir...Schleifen können sehr tückisch sein... Der Code war richtig...deshalb konnte man auch keinen Fehler entdecken ^^
CStoll, danke. Das hatte ich ganz vergessen, du hast recht mit dem Null Pointer. Allerdings waren alle der 6 Werte irgendein Datenmüll, also wurde selbst das erste nicht richtig übergeben. Aber trotzdem danke für den Hinweis.
@ness
ja stimmt, SM wäre ne Möglichkeit. Leider ist das ne Übungsaufgabe und der Prof möchte hierbei bewusst auf die IPC Methoden verzichten, Dateien sind das einzige was erstmal erlaubt ist.
es gibt doch die richtige funktion in dem Paket leider kann ich es von hier aus nicht testen aber wenn ich die Beschreibung richtig vestanden habe dann macht die nodelay function genau das was ich will.
mfg
wdsl
visit us @ n1one.com