Unit_8
-
Hi ich habe mir C-Free runtergeladen. Und muss für die Schule etwas mit uint8_t und uint16_t usw. machen.
leider finde C-Free 4.1 die #include <stdint.h> nicht und sagt immer:
"[Error] *****\C-Free\Temp\Untitled2.cpp:4: stdint.h: No such file or directory".
Gibt es für mich trotzdem ne Möglichkeit damit zu arbeiten, oder son QNX ähnliches System aufzusetzen?
danke und gruss
-
BoosterBey schrieb:
Hi ich habe mir C-Free runtergeladen.
wieso nicht VS 2008 Express
Und muss für die Schule etwas mit uint8_t und uint16_t usw. machen.
das ist C oder C++ aber kein C++/CLI
leider finde C-Free 4.1 die #include <stdint.h> nicht und sagt immer:
"[Error] *****\C-Free\Temp\Untitled2.cpp:4: stdint.h: No such file or directory".eigentlich sollte der Compiler für die Standard-Include ein Verzeichnis haben
Gibt es für mich trotzdem ne Möglichkeit damit zu arbeiten, oder son QNX ähnliches System aufzusetzen?
VMWare / VirtualBox / VirtualPC / $WHATEVER ... damit umgehst Du aber nur Dein Problem
hand, mogel
-
Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum C++/CLI mit .NET in das Forum ANSI C verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Entweder besorge dir die stdint.h von irgendwo und binde sie ein oder bau dir die Datentypen selbst mit einem typedef.
typedef uint8_t unsigned char; typedef uint16_t unsigned short; #include <assert.h> assert(sizeof(uint8_t)==1 && sizeof(uint16_t)==2); //gehe sicher dass wir die richtigen Datentypen haben
-
nwp2 schrieb:
Entweder besorge dir die stdint.h von irgendwo und binde sie ein oder bau dir die Datentypen selbst mit einem typedef.
typedef uint8_t unsigned char; typedef uint16_t unsigned short; #include <assert.h> assert(sizeof(uint8_t)==1 && sizeof(uint16_t)==2); //gehe sicher dass wir die richtigen Datentypen haben
^^die typedefs sind verdreht und 'assert' geht auch nicht ausserhalb von funktionen.
-
QQ
Die Idee war doch ungefähr ersichtlich.typedef unsigned char uint8_t; typedef unsigned short uint16_t; #include <assert.h> int main(){ assert(sizeof(uint8_t)==1 && sizeof(uint16_t)==2); //gehe sicher dass wir die richtigen Datentypen haben //Restcode }
-
Ich glaube man sollte doch besser einen gescheiten Compiler gescheit installieren und dann auch gleich noch die Dateiendung *.c verwenden...
-
nwp2 schrieb:
QQ
Die Idee war doch ungefähr ersichtlich.typedef unsigned char uint8_t; typedef unsigned short uint16_t; #include <assert.h> int main(){ assert(sizeof(uint8_t)==1 && sizeof(uint16_t)==2); //gehe sicher dass wir die richtigen Datentypen haben //Restcode }
^^klar, aber das 'assert' ist hierbei eh für die katz'. wenn einer z.b. signed-typen nimmt, greift es nicht. du brauchst vielleicht sowas:
#define UNSIGNED_CHECK(type) {type a=-1; assert(a>0);}
*fg*
besser lass es ganz weg, verlass dich einfach drauf, dass uint8_t 8 bits unsigned ist, das klappt schon.
-
;fricky schrieb:
^^klar, aber das 'assert' ist hierbei eh für die katz'. wenn einer z.b. signed-typen nimmt, greift es nicht.
Das verstehe ich nicht. Klar überprüfe ich nicht ob mein unsigned char auch unsigned ist, aber dafür habe ich doch unsigned hingeschrieben. Ob allerdings short 2 Byte hat, da wäre ich mir nicht so sicher.
Ansonsten stimme ich Tim zu. Einen richtigen Compiler bzw die richtige Headerdatei benutzen ist sinnvoller als die Dateitypen selber zu bauen.
-
nwp2 schrieb:
Klar überprüfe ich nicht ob mein unsigned char auch unsigned ist, aber dafür habe ich doch unsigned hingeschrieben.
ich meinte dein 'assert' mit dem sizeof, das bringt's nicht.
nwp2 schrieb:
Ob allerdings short 2 Byte hat, da wäre ich mir nicht so sicher.
naja, solange uint16_t 16 bits hat und 'unsigned' ist, ist doch alles gut.
-
danke erstmal für eure Hilfe werde es dann mal mizt dem VS2008 probieren
Gruss