摘要:
1. 缘起 由一个题目引起的:问下面代码输出的是什么?constchar*psz="helloworld";intiArr[]={1,2,3,4,5};cout<<sizeof(psz)<<endl;cout<<sizeof(iArr)<<endl; 前者输出是4,输出的是psz的类型大小,即指针类型占4个字节(在win32下)。 后者输出是20,即该数组的长度。 我是直接看到这题答案的,开始没有多想,但是后来发现数组名和指针是很相像的,印象里无论是数组名和psz都指向一串地址的第一个地址啊,怎么sizeof的计算方式不同呢? 阅读全文