Witam,
Może ktoś wytłumaczyć dlaczego takie wyniki się otrzymuje z poniższego programu a nie inne. Przydała by się też książka która mówi o takich aspektach. Na forum dobreprogramu raczej nikt nic nie wiedział.
Pozdro
Kod php:
#include <cstdlib>
#include <iostream>
using namespace std;
#define MAX(x,y) (x) > (y) ? (x) : (y)
int fun(int k)
{
return k;
}
int fff(int &k)
{
return ++k;
}
int max(int a, int b)
{
cout <<"a="<<a<<"\tb="<<b<<endl;
return (a>b)? a : b;
}
int main(int argc, char *argv[])
{
int k = 6;
int tmp = sizeof(++k);
cout << "k="<<k<<endl;
//-------------------
k = 6;
tmp = fun(++k);
cout << "k="<<k<<endl;
//-------------------
k = 6;
tmp = max(fff(k), fff(k));
cout << "k="<<k<<endl;
int x, y;
x = 5, y = 8;
tmp = MAX(++x, y++);
cout << "tmp="<<tmp<<" x=" <<x<<" y="<<y<<endl;
system("PAUSE");
return EXIT_SUCCESS;
}