Comprendre les API win [Résolu]

Signaler
Messages postés
31
Date d'inscription
mercredi 30 mars 2011
Statut
Membre
Dernière intervention
31 mai 2011
-
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Bonjour,
Je debute dans la programmation...
J'ai lu le tuto de Nanoc sur le site du zero pour apprendre les base du c++. maintenant j'ai commencer a lire le Tuto http://bob.developpez.com
sur les Api, car j'ai un programme professionnel sur lequel il faut que je fasse amelioration. Seulement voila je ne comprend pas grand chose...
il y a beaucoup de notion qui ne sont pas du C++
(je ne c'est pas vraiment se que c'est d'ailleurs) Ce sont des MACRO? par exemple :
LRESULT CALLBACK
LPSTR
WM_COMMAND
APIENTRY
etc...
Ce ne sont pas des notions de c++ ou alors j'ai rien compris..
help!!!
merci

3 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
encore un typedef:
__int64 long long entier sur 64 bits.

X64 et X86:
compilation prévue du prog en 64 ou 32 bits.

ciao...
BruNews, MVP VC++
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
L'API est exposée au format C, pas C++.
Ceci permet son utilisation depuis tout langage (non déco des noms de fonctions, etc).

SI x86:
LRESULT est 'long'.
CALLBACK est '__stdcall'.

SI x64:
LRESULT est '__int64'.
CALLBACK est RIEN car x64 doit compiler en __fastcall.

LPSTR est 'char*'.

etc, etc.
Tout est typedef ou define.

ciao...
BruNews, MVP VC++
Messages postés
31
Date d'inscription
mercredi 30 mars 2011
Statut
Membre
Dernière intervention
31 mai 2011

salut,
merci de ta reponse
le premier phrase du tuto est :
Tout d'abord, il s'agit de créer le projet dans VC++. D'ou ma croyance pour du C++ dans les API windows.
J'aurai un autre question suite a ta réponse
sa veut dire quoi quand il a un tiret bas avant
une expression? : __int?
que veut tu dire par si X64 et X86?
excuz mon incompetance mais je debute vraiment comme je te l'ai dit je n'ai que les base du c++