问题:
[单选] 有以下程序:#include<stdio.h>
#include<stdlio.h>
void fun(int*pl,int*p2,int*s)
{ s=(int*)malloc(sizeof(int));
*s=*pl+*p2;
free(s);
}
main( )
{ int a=1,b=40,*q=&a;
fun(&a,&b,q);
printf("%d",*q);
}
程序运行后的输出结果是( )。
A . 42
B . 0
C . 1
D . 41
参考答案:C
参考解析:
Fun函数功能是新开辟内存空间存放a和b的地址,q的地址并没有变化,所以应该还是指向地址a。