c语言问题,在调用函数时可以将结构体变量作为实参传给函数这句话为什么错?不能传回实参,这句话没错吧

如题所述

可以将结构体变量作为实参传给函数的。这句没错
具体是否可以传回实参,要看情况。
比如 如果结构体里面包含的是值 struct A{int a;}
那么在函数中对参数m做m.a的改变, 不会影响实参。
如果结构体里面包含的是指针,比如 struct A {char *s;}
形参为m的情况下,如果赋值m.s=xxxx 那么不会影响实参
但如果用strcpy(m.s, "xxxxx"); 就会影响实参。 因为实参和形参的s是同一个地址。
温馨提示:答案为网友推荐,仅供参考
相似回答