对于:
- int a[] = {5, 15, 34, 54, 14, 2, 52, 72};
- int *p = &a[5];
则:
p[-2]的值是?
答案:54
对于:
- int a[] = {5, 15, 34, 54, 14, 2, 52, 72};
- int *p = &a[1];
则:
p[2]的值是?
答案:54
本题目来源于mooc:c语言程序设计,仅供本人个人学习参考使用。
详解:
大笨蛋~~八货!你明明造p指向a【5】,代表p【0】=a【5】,那么p【n】就对应向前向后数就可以了,然而你却想着下标是从0开始的,于是及其愉快的,木有脑子的认为第n个数的下标就是n++1,对!就是n+1,然后验证,两道答案不一样啊,不一样啊。简直,无言以对==
对于以下代码段,正确的说法是:
- char *p;
- while (1) {
- p = malloc(1);
- *p = 0;
- }
-
A.
-
B.
-
C.
-
D.
答案:b
对于以下代码段:
- int a[] = {1,2,3,4,5,};
- int *p = a;
- int *q = &a[5];
- printf("%d", q-p);
当sizeof(int)为4时,以下说法正确的是:
-
A.
-
B.
-
C.
-
D.
答案:
C