hemmoleg schrieb:
mein hauptproblem war das ich mit den datentypen nich klargekommen bin weil ich noch nie was von denen gehört hab (ich hatte bisher immer nur mit int, double, string... zu tun). die haben mich halt total verwirrt und LPVOID wird in der msdn zB gar nich erklärt.
wie gesagt: recht-sklick (alternativ strg + klick oder [strg +] f12) auf den dateitypen und schon weißt du was das bedeutet.
lp heißt im prinzip nur, dass der typ ein zeiger ist, mit dem datentyp der dahinter steht. also lpvoid z.b. long pointer auf void (im klartext void *). lpctstr/lpcwstr long pointer auf const (wide) string (da string im klassischen sinne nicht existiert, hier halt const char * bzw. const wchar_t * in unicode umgebungen).
edit: spätestens wenn du plattformübergreifend programmieren willst, brauchst du solche typedefs, damit du nicht alles 100 mal schreiben musst. da käme dann z.b. so ein konstrukt heraus:
Code:
#if defined(VISUAL_STUDIO) || defined(MINGW)
typedef char int8;
typedef unsigned char uint8;
typedef short int16;
typedef unsigned short uint16;
typedef long int32;
typedef unsigned long uint32;
typedef long long int64;
typedef unsigned long long uint64;
#elif defined(...)
...
#endif
ist imo auch weit übersichtlicher, als wenn du die ganze zeit mit char, short, int usw. rumhantierst. irgendwann magst du dann vllt nicht mehr durchsehen. ich persönlich nutz da lieber ein int16 o.ä., da weiß man sofort um was es sich handelt und wie groß der typ ist bzw. wie weit der wertebereich geht.
dann gibts natürlich noch andere sachen wie dword, was aber etwas mit wörtern zu tun hat. das rührt vom byte her. ein byte kennst du ja sicherlich (= 8 bit = größe eines char). ein wort ist ein "doppeltes" byte (= 16 bit = größes eines short). ein dword ist ein doppeltes wort (= 32 byte = int). und dann gibts noch das qword (= quad word), was die größe eines long long (je nach compiler) bzw. __int64 besitzt (= 64 bit). die größen kannst du aber auch ganz leicht einsehen, wenn du den taschenrechner aufmachst, auf die programmierersicht wechselst und unten erhälst du dann die anzeige qword, dword, word und byte. wie groß das alles dann ist, siehst du unter der nummernanzeige.
irgendwo hier im forum gibts auch ne nette übersicht, was denn all dieses lpvoid, lpctstr usw. bedeutet, aber die erklärung hier reicht eig schon für die meisten fälle.
hemmoleg schrieb:
bzw das hauptproblem ist und bleibt das ich bisher sehr wenig mit der msdn zu tun hatte und die sich eindeutig an profis richtet.
die msdn richtet sich an programmierer, weder an anfänger noch profi. es ist alles erklärt, alles von datentypen über beispiele für parameter, bis zu möglichen rückgabewerten und weiterführende funktionen. das ist nicht das problem. ein anfänger mag da vllt nich durchblicken, wenn man sich aber drauf konzentriert und kurz nachdenkt, ist die msdn überhaupt kein problem.