题目内容

关于动态存储分配,下列说法正确的是 。

A. new和delete是C++语言中专门用于动态内存分配和释放的函数
B. 动态分配的内存空间也可以被初始化
C. 当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必使用delete释放内存空间
D. 当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用new

查看答案
更多问题

对new运算符的下列描述中, 是错误的。

A. 它可以动态创建对象和对象数组
B. 用它创建对象数组时必须指定初始值
C. 用它创建对象时要调用构造函数
D. 用它创建的对象可以使用运算符delete来释放

若有以下定义,则释放指针所指内存空间的操作是 。 float r= news float [10] ;

A. delete r;
B. delete *r;
C. delete []r;
D. delete r[] ;

若指针p已正确定义,要使p指向两个连续的整型动态存储单元,不正确的动态分配语句是 。

A. p=2*(int*)malloc(sizeof(int));
B. p= (int*)malloc(2*sizeof( int));
C. p= (int*)malloc(2*sizeof ( unsigned int));
D. p= (int* )malloc(2,sizeof(int));

以下叙述中正确的是 。

A. C++语言允许main函数带形参,且形参个数和形参名均可由用户指定
B. C++语言允许main函数带形参,形参名只能是argc和argv
C. 当main函数带有形参时,传给形参的值只能从命令行中得到
D. 若有说明int main(int argc,char **argv),则argc的值必须大于1

答案查题题库