问题 单项选择题

以下程序的运行结果是_______。
#include "stdio.h"
main()

int a[]=1,2,3,4,5,6,7,8,9,10,11,12;
int *p=a+5,*q=NULL;
*q=*(p+5);
printf("%d %d\n",*p,*q);

A) 运行后报错 B) 6 6
C) 6 12 D) 5 5

答案

参考答案:A

解析: 题目中没有给q分配存储单元,只是简单的给它赋了一个值,所以程序的运行结果是6 11 NULL pointer assignment,也就是运行后报错。

填空题
问答题 简答题