在工作和几次面试中,均多次用到了Sizeof函数,对于其用法,则有时总是莫名其妙.下面用几个例子来说明一下:
以下所有测试都在VS2008 C++环境:
#include "stdafx.h"
class TT
{
int x;
int y;
static int z;
};
int _tmain(int argc, _TCHAR* argv[])
{
char *p0 = 0;
int length0 = sizeof(p0); //等于4,测试指针长度
char *p1 = "12345";
int length1 = sizeof(p1); //等于4,测试指针长度
char p2[] = "12345";
int length2 = sizeof(p2); //等于6,测试指向的字符串长度
TT tt;
int length3 = sizeof(TT); //等于4
int length4 = sizeof(tt); //等于4
return 0;
}