22.若已定义:int num[8]={0,2,4,6,8,10,12,14},*p=num;,则以下值不等于10的表达式是______。 A. num[5] B. *(num+5) C. *p+5 D. p[5] 标准答案:C
时间: 2024-04-02 21:31:31 浏览: 78
根据题目给出的定义,`num`是一个长度为8的整型数组,其中元素的值分别为`0, 2, 4, 6, 8, 10, 12, 14`。`p`是一个指向`num`数组首元素的指针。根据这些信息,可以分析每个选项的值。
选项A:`num[5]`表示`num`数组中下标为5的元素,即`10`。因此,选项A的值为10。
选项B:`*(num+5)`表示`num`数组中下标为5的元素,即`10`。因此,选项B的值为10。
选项C:`*p+5`表示指针`p`指向的地址中存储的值加上5。由于`p`指向`num`数组的首元素,因此`*p`等于`num[0]`,即`0`。因此,`*p+5`等于`5`。因此,选项C的值为5。
选项D:`p[5]`表示`p`指向的地址向后偏移5个`int`类型的长度,即指向`num[5]`元素的地址。因此,选项D的值为10。
综上所述,选项C的值不等于10,因此答案为C。
阅读全文