有以下函数:
void query() { int *p; p=new int[3]; //… delete []p; p=new double[5]; //… delete []p; }
出现了编译错误。请分析错误的原因,并把上述程序补充完整,上机验证你的判断。
在语句p=new double[5];中企图把动态浮点型数组的地址写入整型指针p,造成错误。错误为:
error C2440: “=”:无法从“double *”转换为“int *”。
改正方法:增加一个double*q指针。
void query() { int *p; p=new int[3]; delete [] p; //…… double *q; q=new double[5]; //…… delete []q; }
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
在语句p=new double[5];中企图把动态浮点型数组的地址写入整型指针p,造成错误。错误为:
error C2440: “=”:无法从“double *”转换为“int *”。
改正方法:增加一个double*q指针。