// BRKP.cpp : Defines the entry point for the application. // #include "stdafx.h" //prototypes des fonctions DWORD dwSomme(DWORD dwA,DWORD dwB); DWORD dwProduit(DWORD dwA,DWORD dwB); DWORD dwValeur1; //juste pour avoir une variable statique DWORD dwValeur2; //juste pour avoir une variable statique int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { DWORD i,k; //Visualisation des adresses dans la fenêtre de sortie RETAILMSG(1,(TEXT("Main: adresse de i= %x\n"),&i)); RETAILMSG(1,(TEXT("Main: adresse de k= %x\n"),&k)); RETAILMSG(1,(TEXT("Main: adresse de valeur1= %x\n"),&dwValeur1)); RETAILMSG(1,(TEXT("Main: adresse de valeur2= %x\n"),&dwValeur2)); //Calcul de somme et produit des entiers positifs 5 et 3 i=5; k=3; RETAILMSG(1,(TEXT("Main: i=%u k=%u\n"),i,k)); dwValeur1=dwSomme(i,k); RETAILMSG(1,(TEXT("Main: i+k=%u\n"),dwValeur1)); printf(("Main: i=%u k=%u dwValeur1 =%u \n"),i,k,dwValeur1); dwValeur2=dwProduit(i,k); RETAILMSG(1,(TEXT("Main: i*k=%u\n"),dwValeur2)); printf(("Main: i=%u k=%u dwValeur2 =%u \n"),i,k,dwValeur2); getchar(); return 0; } DWORD dwSomme(DWORD dwA,DWORD dwB) { //Addition de A et B par une méthode archaïque DWORD dwC=0; while(dwA--) dwC++; while(dwB--) dwC++; return dwC; } DWORD dwProduit(DWORD dwA,DWORD dwB) { // Multiplication de A et B par une méthode simpliste DWORD dwC; for(dwC=0;dwB;dwB--) dwC=dwSomme(dwA,dwC); return dwC; }