单选题
有以下程序:
#include
#include
void fun(int*pl,int*p2,int*s)
{
s=(int*)malloc(sizeof(int));
*s=*p1+*p2:
free(s);
}
void main()
{
int a=1,b=40,*q=&a;
fun(&a,&b,q);
printf(“%d\n”,*q);
}
程序运行后的输出结果是( )。
【正确答案】
C
【答案解析】解析:fun函数功能是新开辟内存空间存放a和b的地址,q的地址并没有变化,所以应该还是指向地址a。