已知“int *p=malloc(100);”,要释放p所指向的动态内存,正确的语句为()。
A: Afree(p);
B: Bfree p;
C: Cfree(*p);
D: Dfree;
A: Afree(p);
B: Bfree p;
C: Cfree(*p);
D: Dfree;
举一反三
- 假定指针变量p定义为“int *p=malloc(sizeof(int));”,要释放p所指向的动态存储空间,应调用的函数为()。 A: free(p) B: delete(p) C: free(*p) D: free(&p)
- 若指针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));
- 希望申请能存储10个整数的存储空间并将指针p指向申请空间的起始地址,能实现的语句是____________。( ) A: int *p; p=(int *)malloc(sizeof(int)*10); B: int *p; p=(int *)malloc(sizeof(int), C: int *p; p=(int *)calloc(sizeof(int)*10); 10); D: double *p; p=(int *)malloc(sizeof(int),10);
- 已有定义语句 int *p; 以下能动态分配一个整型存储单元,并把该单元的首地址正确赋值给指针变量p的语句是( ) A: p= malloc(sizeof(int)); B: p=*malloc(sizeof(int)); C: p=(int*)malloc(sizeof(int)); D: *p=(int*)malloc(sizeof(int));
- 申请一个具有n个int型元素的一维动态数组,可以使用语句()。 A: int *p;p=(int *)malloc(n,sizeof(int)); B: int *p;p=(int *)malloc(n*sizeof(int)); C: int *p;p=(int *)realloc(n*sizeof(int)); D: int p[n];