Friday, July 3, 2009

Заагчууд санах ойд хэр хэмжээ эзэлдэг вэ?

[sharavsambuu@localhost tsedevsuren]$ more sample.cpp
#include <iostream>
using namespace std;
int main()
{
unsigned char *uc;
char *c;
short int *si;
unsigned int *ui;
int *i;
unsigned long *ul;
long *l;
float *f;
double *d;
long double *ld;
struct TWorker
{
int i;
char name[20];
char carrer[20];
int workdays;
int moneyOfDay;
float salary;
};
TWorker *w;
cout<<"санах ойд эзлэх хэмжээ unsigned char: "<<sizeof(uc)<<endl;
cout<<"санах ойд эзлэх хэмжээ char: "<<sizeof(c)<<endl;
cout<<"санах ойд эзлэх хэмжээ short int: "<<sizeof(si)<<endl;
cout<<"санах ойд эзлэх хэмжээ unsigned int: "<<sizeof(ui)<<endl;
cout<<"санах ойд эзлэх хэмжээ int: "<<sizeof(i)<<endl;
cout<<"санах ойд эзлэх хэмжээ unsigned long: "<<sizeof(ul)<<endl;
cout<<"санах ойд эзлэх хэмжээ long: "<<sizeof(l)<<endl;
cout<<"санах ойд эзлэх хэмжээ float: "<<sizeof(f)<<endl;
cout<<"санах ойд эзлэх хэмжээ double: "<<sizeof(d)<<endl;
cout<<"санах ойд эзлэх хэмжээ long double: "<<sizeof(ld)<<endl;
cout<<"санах ойд эзлэх хэмжээ TWorker: "<<sizeof(w)<<endl;
return 0;
}


[sharavsambuu@localhost tsedevsuren]$ g++ -o sample sample.cpp
[sharavsambuu@localhost tsedevsuren]$ ./sample
санах ойд эзлэх хэмжээ unsigned char: 4
санах ойд эзлэх хэмжээ char: 4
санах ойд эзлэх хэмжээ short int: 4
санах ойд эзлэх хэмжээ unsigned int: 4
санах ойд эзлэх хэмжээ int: 4
санах ойд эзлэх хэмжээ unsigned long: 4
санах ойд эзлэх хэмжээ long: 4
санах ойд эзлэх хэмжээ float: 4
санах ойд эзлэх хэмжээ double: 4
санах ойд эзлэх хэмжээ long double: 4
санах ойд эзлэх хэмжээ TWorker: 4
[sharavsambuu@localhost tsedevsuren]$

Эндээс харахад заагчууд төрлөөс үл хамааран санах ойд 4-н байт хэмжээтэй байдаг байхнээ.