如题所述
fun(2,3,c);中的c是函数fun中的局部变量,与int c;中的c不是同一个变量,当fun函数结束后,fun(2,3,c);中的c将会被编译器销毁,后面的printf语句其实是输出的int c;中的c的值,而语句int c;是声明了int型变量,但是没有给它赋值,所以它的值是不确定的(垃圾值)追问
那程序一开始定义的fun(int a,int b,int c) {c=a*b}这些语句在程序中起了什么作用。
追答fun(int a,int b,int c) {c=a*b;}
是函数fun的定义,告诉编译器,名叫fun的函数需要3个int型参数,然后第3个参数的值等于前两个参数的乘积,它返回int型的值(没显示注明返回值类型,默认为int型),但是函数中没有return语句,所以返回值的大小取决于具体的编译器。
温馨提示:答案为网友推荐,仅供参考