有以下程序: struct s { int x,y;) data[2]={10,100,20,200); main() { struct s *p=data; printf("%d\n",++(p->x));

admin2010-01-10  36

问题 有以下程序:    struct  s    {  int  x,y;)  data[2]={10,100,20,200);    main()    {  struct  s    *p=data;    printf("%d\n",++(p->x));    }    程序运行后的输出结果是(  )。

选项 A、10
B、11
C、20
D、21

答案2

解析 本题中定义了一个结构体数组data[2]并初始化,主函数中定义了一个结构体类型指针变量并让它指向data的首地址,由于p指向第一个元素的地址,所以p->x相当于data[0].x即为10,所以++(p->x)后的值为11。故4个选项中选项B符合题意。
转载请注明原文地址:https://kaotiyun.com/show/2HWp777K
0

最新回复(0)