#include "stdafx.h" #include <iostream> using namespace std; void func(char str[100]) { cout<<sizeof(str)<<endl; } int main() { char str[100]; func(str); //str传入函数做参数,做sizeof运算时被当做指针 返回4 cout<<sizeof(str)<<endl; //返回整个数组占用的内存空间 100*1 int str1[100]; cout<<sizeof(str1)<<endl; //返回100*4 char str2[]="hello"; cout<<sizeof(str2)<<endl; //6 char *p=str; cout<<sizeof(p)<<endl; //32位WinNT平台下指针都是4字节 cout<<sizeof(*p)<<endl;//char型字符 返回1 void *p11=malloc(100); cout<<sizeof(p11)<<endl;//指针 返回4 return 0; }
转载于:https://www.cnblogs.com/audi-car/p/4404465.html