C语言:分析以下程序的输出结果

如题所述

f1()中,name是指针,所以,在函数中,可以改变其中的内容,进而改变了实参中的内容;而num是普通变量,所以,在函数中的变化,不会影响其实参的值
f2()中,q是指针,所以,在函数中,可以改变其中的内容,进而实参中的内容也就发生了变化
p=&s[1]; //p->name="LisiGuo" p->num=20042
f1(p->name,p->num) 会改变p->name("SunDan"),而p->num不变
f2(&s[0]); s[0]中的内容,全部由子函数中的数据所替换,变为:"SunDan",20044
所以,输出结果为:
SunDan 20042
SunDan 20044
温馨提示:答案为网友推荐,仅供参考
相似回答