为什么int a[]={1,2,3,4,5}是对的,而int*p={1,2,3,4,5}是错的?

来源:学生作业学帮网 编辑:学帮网 时间:2024/06/07 03:16:54

为什么int a[]={1,2,3,4,5}是对的,而int*p={1,2,3,4,5}是错的?

int a[]={1,2,3,4,5}实际上是用{1,2,3,4,5}初始化空间后,分配给a ;int*p这个定义根据ANSI C++的规定p为指针,必须显式为其分配空间,否则p指向的未知不定.
二者的差异是Ansi/ISO C++规范决定的.