Problem beim Beenden des Programms
-
Nicht zwangsläufig.
-
Danke shconmal für die schnellen Antworten, aber wie genau geht das mit den "threads" gibts da irgendwelche Tutorials weil ich davon keinen Plan habe und erst seit 2 Wochen Programmiere.
-
Bjo3rN schrieb:
Danke shconmal für die schnellen Antworten, aber wie genau geht das mit den "threads" gibts da irgendwelche Tutorials weil ich davon keinen Plan habe und erst seit 2 Wochen Programmiere.
Nix für ungut, aber lern lieber mal die Grundlagen.
Mit boost::thread sind Threads zwar recht bequem zu verwenden, aber wenn Du erst zwei Wochen programmierst, ist das eindeutig noch zu früh für Dich.
-
Ich mache gerade mein 3 wöchiges Betriebspraktikum und der Betreuer hat mir halt die Aufgabe gegeben, die ich bis hierhin auch recht schnell gelöst hatte.
-
Könntet ihr mir nicht noch etwas genauere Angaben geben was ich da verwenden soll. Ich finde da noch nichts.
http://www.boost.org/doc/html/threads.html
Dies habe ich jetzt herausgesucht aber irgendwie scheint das sehr kompliziert zu sein.
-
Nö, ist nicht kompliziert. Du muß eigentlich nur boost erstmal installieren, dann die Headers benutzen, die Libs und DLLs in dein Projekt hinzufügen und schon kann man mit zwei bis drei Zeilen Code einen Thread starten.
Jemand der die Grundlagen drauf hat, mit seinem Compiler, IDE und C++ umzugehen, macht das in zwei Minuten. (die Boost-Installation zähle ich nicht dazu, weil die einmalig istalliert werden muß...)
-
Welchen Compiler benutzt du denn?
-
Ich benutze Visual C++.
Brauch man für die Installation Admin Rechte auf dem PC?
Die habe ich nicht, da ich hier nur mein Praktikum mache.
-
Und welche Version?
Dann probier mal meine Installationsanleitung:
http://www.kharchi.de/Boost_Installation.html
Die ist aber für VC++7.1. Wenn du VC++7.0 oder 6.0 hast, mußt du aus Step 8 den Abschnitt "-sTOOLS=vc-7_1" entsprechend auf "-sTOOLS=vc7" bzw. für 6.0 auf "-sTOOLS=msvc" ändern.
Ob man Admin-Rechte benötigt, denke ich nicht, da er hauptsächlich nur compiliert und Libs erstellt. Zumindest mußt du Schreibrechte auf eines der Laufwerke haben.
-
Die Boostklasse kann ich nicht installieren, da es entpackt ja 500mb gross ist und die Festplatte hier nichts mehr frei hat.
Ich hatte mich gestern mit dem Azubi zusammengesetzt und wir haben nach "nonblocking keyboard query" und ähnlichen gesucht, aber waren noch nicht fündig geworden. Kann man das nicht mit einem wait machen bzw ohne eine Class zu benutzen?
So sieht das Programm mitlerweile aus#include <conio.h> #include "Tserial.h" #include <stdio.h> #include <windows.h> #define ESC 27 char taste; int c; int main(){ Tserial*com; FILE*datei; // Initialisierung (Seriellen Port und eine Datei öffnen) com=new Tserial(); com->connect("COM1", 9600 , spNONE); datei=fopen("c:\\asdf.txt","a"); // Programmschleife (Seriellen Port abfragen und bei Tastendruck Programm beenden) while(taste != ESC){ if (com->getNbrOfBytes()>0) { c = (int) com->getChar(); printf("%c",c); fprintf(datei,"%c",c); } else { // System entlasten Sleep(250); } //if (feof(stdin)) printf("EOF on STDIN\n"); //wirkungslos!