如下程序的执行结果是  #include<iostream.h>  void main( )  { static int a[ ]={ 1,7,3,9,5,11 };   int * p=a;   * (p+3)+=4;   cout < < * p <

admin2013-05-30  25

问题 如下程序的执行结果是  #include<iostream.h>  void main( )  { static int a[ ]={ 1,7,3,9,5,11 };   int * p=a;   * (p+3)+=4;   cout < < * p < <"," < < * (p+3);}

选项 A、1,13
B、1,16
C、3,13
D、1,14

答案1

解析 指针数组的定义、赋初值、数组元素的引用与赋值等操作和一般数组的处理方法基本相同。需要注意指针数组是指针类型的,对其元素所赋的值必须是地址值。其格式是“存储类型数据类型 * 指针数组名1[长度1]={初值1},功能是定义指向“数据类型”变量或数组的指针型数组,同时给指针数组元素赋初值。这些指针变量具有指定的“存储类型”。本题中指针 * p指向数组a,表达式 * (p+3)+=4的含义是 * (P+3)= * (p +3)+4,而 * (p+3)在数组中指向的值为9,最后输出的结果为9+4=13,注意:一个语句的结束要有分号。
转载请注明原文地址:https://kaotiyun.com/show/vQNp777K
0

最新回复(0)