Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Abbiamo provato per diversi giorni una new entry del mercato italiano, la Gowow Ori, una moto elettrica da off-road, omologata anche per la strada, che sfrutta una pendrive USB per cambiare radicalmente le sue prestazioni
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
OnePlus 15 nasce per alzare l'asticella delle prestazioni e del gaming mobile. Ma non solo, visto che integra un display LTPO 1,5K a 165 Hz, OxygenOS 16 con funzioni AI integrate e un comparto foto con tre moduli da 50 MP al posteriore. La batteria da 7.300 mAh con SUPERVOOC 120 W e AIRVOOC 50 W è la ciliegina sulla torta per uno smartphone che promette di offrire un'esperienza d'uso senza alcun compromesso
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
Vediamo come si comporta il Ryzen 5 7500X3D, nuovo processore di casa AMD che fonde 6 core Zen 4 con la tecnologia 3D V-Cache, particolarmente utile in scenari come il gaming. Annunciato a un prezzo di listino di 279€, il nuovo arrivato sarà in grado di diventare un riferimento per i sistemi budget? Ecco cosa ne pensiamo.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-06-2005, 23:16   #1
Dorothy.Kappa
Junior Member
 
Iscritto dal: Jun 2005
Messaggi: 4
WINAPI o APIENTRY?

Ciao a tutti,
ho cominciato oggi con la programmazione Win32 col semplice programmino:

#include "stdafx.h" //windows.h

int WINAPI WinMain(HINSTANCE hInstance, //WINAPI o APIENTRY ?
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{

MessageBox(NULL, "All work and no play make Jack a dull boy!", "Il mio primo programma Windows", MB_OK | MB_ICONEXCLAMATION);

return 0;
}

Non mi e' chiaro a cosa serve la definizione WINAPI e la sua differenza con APIENTRY (sembrano intercambiabili, funziona tutto lo stesso).
Utilizzo Visual C++ 6.0. Qualcuno puo' illuminarmi?

Grazie,ciao
Dorothy.Kappa è offline   Rispondi citando il messaggio o parte di esso
Old 24-06-2005, 23:31   #2
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
sono due macro definite come convenzioni di chiamata (entrambe __stdcall mi sembra); in teoria non sono intercambiabili, in pratica si. in genere nella WinMain io vedo sempre APIENTRY.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 25-06-2005, 02:49   #3
Dorothy.Kappa
Junior Member
 
Iscritto dal: Jun 2005
Messaggi: 4
Ti ringrazio per la risposta, anche se non mi e' chiarissimo cosa significa 'convenzione di chiamata'. Avresti la pazienza di illustrarmelo meglio?
Grazie
Dorothy.Kappa è offline   Rispondi citando il messaggio o parte di esso
Old 25-06-2005, 14:07   #4
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
__stdcall ad esempio non sai cos'è?
le convenzioni di chiamata sono semplicemente una serie di convenzioni, regole insomma, utilizzate a livello di assembly tra una chiamata di funzione e l'altra; ti faccio un esempio: i parametri solitamente vengono passati ad una funzione tramite lo stack (fatta eccezione per la convenzione __fastcall secondo la quale i primi 4 argomenti vanno passati tramite registri); la funzione chiamata li usa, dopodiché chi è che ce li toglie dallo stack? questo è un esempio di ciò che viene stabilito dalla convenzione di chiamata; nel caso specifico, __stdcall stabilisce che sia la funzione chiamata (non chiamante) a ripulire lo stack. solitamente i compilatori effettuano la pulizia tramite una versione dell'istruzione RET creata da Intel apposta per supportare il ritorno alla funzione chiamante e contemporaneamente la pulizia di N bytes dallo stack.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 25-06-2005, 16:26   #5
Dorothy.Kappa
Junior Member
 
Iscritto dal: Jun 2005
Messaggi: 4
Chiarissimo, grazie.
Essendo autodidatta mi chiedevo se esiste un testo (o altro) che approfondisca quello che tu dici. Mi spiego meglio: nei testi di C++ che ho letto o nei tutorial in rete non ce ne e' accenno (o non ho trovato). Mi piace capire le cose a fondo. Per rispondere alla domanda che io avevo posto dove avrei dovuto guardare? Su come sono fatti i compilatori? Su regole assembly di passaggio parametri?
Grazie ancora, Do.
Dorothy.Kappa è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2005, 13:05   #6
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da Dorothy.Kappa
Chiarissimo, grazie.
Essendo autodidatta mi chiedevo se esiste un testo (o altro) che approfondisca quello che tu dici. Mi spiego meglio: nei testi di C++ che ho letto o nei tutorial in rete non ce ne e' accenno (o non ho trovato). Mi piace capire le cose a fondo. Per rispondere alla domanda che io avevo posto dove avrei dovuto guardare? Su come sono fatti i compilatori? Su regole assembly di passaggio parametri?
Grazie ancora, Do.
per le convenzioni di chiamata avresti dovuto guardare una buona guida di C penso; poi forse le conoscenze di assembly non ti sarebbero bastate: in tal caso avresti dovuto leggerti qualcosa sull'assembly (io sull'argomento ho letto un libro qualche anno fa e il manuale Intel di recente).
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2005, 14:28   #7
Dorothy.Kappa
Junior Member
 
Iscritto dal: Jun 2005
Messaggi: 4
Grazie molte.
Dorothy.Kappa è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design   Recensione OnePlus 15: potenza da vendere e batt...
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media AMD Ryzen 5 7500X3D: la nuova CPU da gaming con ...
SONY BRAVIA 8 II e BRAVIA Theatre System 6: il cinema a casa in formato compatto SONY BRAVIA 8 II e BRAVIA Theatre System 6: il c...
KTC H27E6 a 300Hz e 1ms: come i rivali ma a metà prezzo KTC H27E6 a 300Hz e 1ms: come i rivali ma a met&...
Bob Iger anticipa le novità AI di...
Microsoft Teams 'spierà' i dipend...
Michael Burry chiude Scion e fa di nuovo...
Huawei prepara i nuovi Mate 80: fino a 2...
Una e-Mountain Bike di qualità ma...
Tutte le offerte Amazon Black Friday pi&...
DJI Mini 4K Fly More Combo con 3 batteri...
Crollo di prezzo sui nuovissimi iPhone A...
Uno smartphone super economico ma potent...
Offerte Black Friday: PlayStation 5 ora ...
Samsung alza i listini fino al 60%: sta ...
Black Friday anticipato: maxi TV QLED a ...
Windows 26: un concept mostra come potre...
I 4 portatili tuttofare super scontati: ...
Black Friday anticipato: monitor da gami...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:42.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v