c++有趣又烧脑的小实例
2019-04-01 本文已影响0人
9842d350648c
不使用sizeof,求类型长度
用指针移动计算来测量字节大小。
#include<iostream>
using namespace std;
//#define lengthofType(val) (char*)(&val+1)-(char*)&val
#if(1)
template <class any>
int lengthofType(any* p)
{
return int(p+1)-int(p);
}
#endif
void main()
{
int* i;
double* q;
char a[11];
cout<<lengthofType(i)<<endl;
cout<<lengthofType(q)<<endl;
cout<<lengthofType(&a)<<endl;
//cout<<lengthofType(a)<<endl;
system("pause");
}
/*
4
8
11
*/
有没有敲着玩一下呢。原来自己敲代码这么累,一点提示没有