A、 动态内存分配是指在程序运行时为变量分配内存的一种方法
B、 栈和堆都属于动态存储区
C、 如果希望在程序的运行期间改变数组的长度,则需要使用动态内存分配函数实现动态数组
D、 调用malloc函数后将会返回一个指针类型的地址,该值可以直接赋值给特定的指针变量,无需强制类型转换
答案:D
A、 动态内存分配是指在程序运行时为变量分配内存的一种方法
B、 栈和堆都属于动态存储区
C、 如果希望在程序的运行期间改变数组的长度,则需要使用动态内存分配函数实现动态数组
D、 调用malloc函数后将会返回一个指针类型的地址,该值可以直接赋值给特定的指针变量,无需强制类型转换
答案:D
A. int a[10] = (0, 0, 0, 0, 0);
B. int a[10] = {1, 2*3};
C. int a[10] = {};
D. int a[] = {0}
A. strlen(sx) < strlen(sy)
B. strcmp(sx, sy) < 0
C. sx < sy
D. sx[0] < sy[0]
A. 宏不存在类型问题,宏名无类型,它的参数也无类型
B. 宏替换不占用运行时间
C. 宏替换时先求出实参表达式的值,然后代入形参运算求值
D. 宏替换只不过是字符替代而已
A. 18
B. 20
C. 9
D. 10
A. y = 0;if(x != 0)if(x > 0)y = 1;elsey = -1;
B. y = 0;if (x >= 0)if(x)y = 1;elsey = -1;
C. if(x >= 0)y = 0;if(x)y = 1;elsey = -1;
D. if(x != 0)if(x > 0)y = 1;elsey = -1;
A. i = 32767;do {if(i < 0)break;} while(++i);
B. for(i = 1; ; ) {if(i++ % 2 == 0)continue;if(i++ % 3 == 0)break;}
C. for(i = 1; ; )if(++i < 10)continue;
D. int k = 0;i = 1;while(i--);
A. 函数的返回值是0
B. 如果函数内部没有return语句,则执行到函数体结束处的右花括号时返回
C. 如果使用return语句返回,则 return 后面必须有一个整型表达式
D. 函数仅可以通过return 语句返回
A. double fun(int x, int y)
B. double fun(int x; int y)
C. double fun(int x, y)
D. double fun(int x, y);
A. 'a' && 'b'
B. a <= b
C. a || b + c && b - c
D. !(a< b && c < b || b)
A. void *的含义是指该指针基类型未知,若将函数调用的返回值赋值给某个指针,必须做强制类型转换,将返回的指针值转换为所需的类型
B. 以上说法都不对
C. void *的含义是指该函数没有返回值
D. void *的含义是指函数调用的返回值为指针类型,该指针为空指针,其值为NULL