Avrei due domande sul C++:
[list=1][*] Come si carika na DLL esterna(con codice)????
[*] Come si fa per sapere se un numero è pari o dispari(sempre con codice)???? [/list=1]
Grazie per ecentuali risposte
Ciauz
Avrei due domande sul C++:
[list=1][*] Come si carika na DLL esterna(con codice)????
[*] Come si fa per sapere se un numero è pari o dispari(sempre con codice)???? [/list=1]
Grazie per ecentuali risposte
Ciauz
Se in un primo momento l'idea non è assurda, allora non c'è nessuna speranza che
si realizzi.
Os: WinME
Lang: C++
Editor: C++ Builder 6 Enterprise
1) BOOOOO
2) Non lo so se c'è una funziona però puoi fare così (metodo elementare :gren: ):
n è il tuo numero:
dividilo per 2, moltiplica solo la parte intera del risultato per 2 e hai come risultato x!
Confronta x con n:
Se sono uguali, il numero è pari, altrimenti è dispari
regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily
Oppure controlli il resto della divisione per due:
ciauzcodice:cin >> tuoNumero; if ((tuoNumero % 2) == 0) cout << "pari"; else cout << "dispari";
Usa LoadLibrary per caricare una DLL e poi GetProcAddress per chiamare funzioni della DLL.
ciao
esempio codice ???????
Se in un primo momento l'idea non è assurda, allora non c'è nessuna speranza che
si realizzi.
Os: WinME
Lang: C++
Editor: C++ Builder 6 Enterprise
un "per favore"?
typedef UINT (CALLBACK* LPFNDLLFUNC1)(DWORD,UINT);
.
.
.
HINSTANCE hDLL; // Handle to DLL
LPFNDLLFUNC1 lpfnDllFunc1; // Function pointer
DWORD dwParam1;
UINT uParam2, uReturnVal;
hDLL = LoadLibrary("MyDLL");
if (hDLL != NULL)
{
lpfnDllFunc1 = (LPFNDLLFUNC1)GetProcAddress(hDLL,
"DLLFunc1");
if (!lpfnDllFunc1)
{
// handle the error
FreeLibrary(hDLL);
return SOME_ERROR_CODE;
}
else
{
// call the function
uReturnVal = lpfnDllFunc1(dwParam1, uParam2);
}
}
eccoti, preso da MSDN, dove incredibilmente ci sono le risposte a molte domande.
ciao
tnk e skusa la scortesia
Se in un primo momento l'idea non è assurda, allora non c'è nessuna speranza che
si realizzi.
Os: WinME
Lang: C++
Editor: C++ Builder 6 Enterprise
ce l'hai non in VC++?Originariamente inviato da luigifumero
un "per favore"?
typedef UINT (CALLBACK* LPFNDLLFUNC1)(DWORD,UINT);
.
.
.
HINSTANCE hDLL; // Handle to DLL
LPFNDLLFUNC1 lpfnDllFunc1; // Function pointer
DWORD dwParam1;
UINT uParam2, uReturnVal;
hDLL = LoadLibrary("MyDLL");
if (hDLL != NULL)
{
lpfnDllFunc1 = (LPFNDLLFUNC1)GetProcAddress(hDLL,
"DLLFunc1");
if (!lpfnDllFunc1)
{
// handle the error
FreeLibrary(hDLL);
return SOME_ERROR_CODE;
}
else
{
// call the function
uReturnVal = lpfnDllFunc1(dwParam1, uParam2);
}
}
eccoti, preso da MSDN, dove incredibilmente ci sono le risposte a molte domande.
ciao
Per il pari/dispari è molto più ruLeZZoSo l'and bit a bit (&):
numero & 1 = 0 se pari
1 se dispari
13 = 110(1) -> dispari
6 = 011(0) -> pari
Praticamente prende il bit meno significativo del numero, e se è 0 il numero è multiplo di 2, cioè pari, altrimenti è dispari.
P.S.: è anche mooolto più veloce del %.
Ciao.