C++ zum abgewöhnen
-
Hallo,
heut hab ich mal wieder etwas Muse zum programmieren. Nach 5 Minuten hätt ich am liebsten wieder alles hingeworfen.
#include "stdafx.h" #include <Winuser.h> #include <iostream.h> #include <assert.h> int main(int argc, char* argv[]) { cout << "Hallo"; int i = MessageBox(NULL, "Haaloo", "Haaaallo", 0); char * a; cin >> a; assert(0); return 0; }
meldet 2 Fehler in Winuser.h
Ja hallo, das ist alles getesteter lauffähiger Code, wieso bringt der Fehler?Also hab ich die Reihenfolge der Includes vertauscht:
#include <Winuser.h> #include "stdafx.h" #include <iostream.h> #include <assert.h>
meldet 1 Fehler, kennt die Funktion MessageBox nicht.
Was läuft da falsch, wieso gehen die einfachsten Sachen nicht?
-
-
@ROFLMAO ...und? Hast du Ahnung? Oder solltest du auch besser dein f... f... halten!
-
#include <windows.h>
nicht winuser.h, die ist da schon mit drin
-
Ich hab Ahnung, ja.
-
char * a; cin >> a;
Das ist falsch!!!!!!!!!!!!!!!!!!!!!!!111111
-
1. man muss windows.h inkludieren
2. bevor man etwas in ein char* einliest sollte man speicherplatz a laa = new char[10];
reservieren oder lieber gleich einen std::string benutzen
-
Der Abgang des Programms ist auch schoen
mfg
v R
-
Danke!
Die MSDN sagt mir zu MessageBox: Defined in Winuser.h
Na egal, mit windows.h gehts.Übrigens habe ich immer wieder mal include Probleme. Ist anscheinend ne Wissenschaft für sich, an der richtigen Stelle das Richtige zu includieren.
@ROFLMAO ich glaub nicht dass du Ahnung hast, ich glaub du bist nur ein Progger!
-
ich glaub du bist nur ein Progger!
Der war gut.
-
elektron_1 schrieb:
Übrigens habe ich immer wieder mal include Probleme. Ist anscheinend ne Wissenschaft für sich, an der richtigen Stelle das Richtige zu includieren.
ne, isses an sich nicht.
include probleme kommen eigentlich immer nur davon, dass eine datei in einer übersetzungseinheit mehrmals inkludiert wird.
-
elektron_1 schrieb:
Ist anscheinend ne Wissenschaft für sich, an der richtigen Stelle das Richtige zu includieren.
Nö, nur wenn man einfach drauflos "proggt" dann wird es in den meisten Fällen nix.
-
elektron_1 schrieb:
Danke!
Die MSDN sagt mir zu MessageBox: Defined in Winuser.h
Na egal, mit windows.h gehts.MSDN schrieb:
Function Information
Minimum DLL Version user32.dll
Header Declared in Winuser.h, include Windows.h
Import library User32.lib
Minimum operating systems Windows 95, Windows NT 3.1
Unicode Implemented as ANSI and Unicode versions.Da gibt es eigentlich nicht viel falsch zu verstehen.
Ich finde es jedenfalls immer witzig, wenn sich Leute mit solchem (Jäh)-Zorn über ihre nicht funktionierenden Programme aufregen und das dabei auf eigenen Unzulänglichkeiten basiert.
-
Wie heißt es so schön? Das Problem sitzt meistens nicht im sondern vor dem PC!
-
na ja, aber es gibt auch compilerbugs! seltenst, aber troztem vorhanden sind tatsächlich fehler, die nicht am user liegen
-
Lars Hupel schrieb:
na ja, aber es gibt auch compilerbugs! seltenst, aber troztem vorhanden sind tatsächlich fehler, die nicht am user liegen
Und dann gibt es noch Bugs in Bibilotheken die täglich zigtausende von Leuten verwenden, den aber komischerweise nur du zu kennen scheinst. Workarounds funktionieren dann meist nur bis zum Release der nächsten Version richtig. Jaja, hart ist das Dasein eines Programmierers
.
-
programmierer habens eben nicht leicht...
-
Ohja, ich will uns auch alle bemitleiden...
Es ist so grausam Programmierer zu sein.
By the Way, hab heute meinen letzten Praktikumstag.