对于语句void*p=malloc(sizeof(int)*250);,下面说法正确的是( )。

admin2019-01-11  39

问题 对于语句void*p=malloc(sizeof(int)*250);,下面说法正确的是(    )。

选项 A、经强制类型转换后,该语句所申请的内存可以作为125个double元素的一维数组来使用
B、利用指针p,所申请的内存可作为250个int元素的一维数组来使用
C、这条语句存在语法错误
D、该语句所申请内存只能存储int数据

答案A

解析 经强制类型转换后,double型占8个字节,int型占4个字节,250个int型元素内存空间,可以存放125个double类型元素,选项A正确;在使用指针p前,必须先把malloc函数返回的void指针转换为整型指针,然后赋给指针p,再使用,选项B错误;该语句没有语法错误,选项C错误;调用malloc内存分配函数成功会返回内存地址,返回类型是void*,又称万能指针(可以赋值给任何类型的指针变量),选项D错误;本题答案为A。
转载请注明原文地址:https://jikaoti.com/ti/9Ya0FFFM
0

最新回复(0)