问题 填空题

以下程序的输出结果是()。

#include<stdlib.h>

main()

{ char *s1,*s2,m;

s1=s2=(char*)malloc(sizeof(char));

*s1=15; *s2=20; m=*s1+*s2;

printf("%d\n",m);

}

答案

参考答案:40

解析:

本题中指针s1和s2都指向同一个内存中的地址。因此语句“*s2=20;”执行后,* s1=*s2=20。所以m最后的值为40。

单项选择题
单项选择题