C++中的sizeof

sizeof 返回一个对象或类型名的字节长度。

 

int *pi = new int[13];
cout << "pi:\t" << sizeof(pi)  << endl;
cout << "*pi:\t" << sizeof(*pi) << endl;

string st1("fr");
string st2("a submarine");
string *ps = &st1;
cout << "st1:\t" << sizeof(st1) << endl;
cout << "st2:\t" << sizeof(st2) << endl;
cout << "ps:\t" << sizeof(ps)  << endl;
cout << "*ps:\t" << sizeof(*ps) << endl;

cout << "short:  \t"  << sizeof(short)    << endl;
cout << "short *:\t"  << sizeof(short *)  << endl;
cout << "shout &:\t"  << sizeof(short &)  << endl;
cout << "short[3]:\t" << sizeof(short[3]) << endl;

输出:

pi:     4
*pi:    4
st1:    32
st2:    32
ps:     4
*ps:    32
short:          2
short *:        4
shout &:        2
short[3]:       6

作者: 池塘里的潜艇   发布时间: 2011-06-09