#include <iostream>
#include <cstdio>
#include <queue>
#include <cstring>
using namespace std;
int main()
{
int *test=new int[10];
memset(test,-1,sizeof(test));
for(int i=0;i<10;i++)
cout<<test[i]<<" ";
cout<<endl;
int test1[10];
memset(test1,-1,sizeof(test1));
for(int i=0;i<10;i++)
cout<<test1[i]<<" ";
return 0;
}
申请数组空间时,机器会为其分配一块内存空间,这块内存空间的首地址就是数组名,是个常量。
个人理解:数组名是一个常量,它本身就是数组的头地址。而指针是一个变量,它”存“了一个数组的头地址,所以在sizeof()时会产生差异。