概述
#include <stdio.h> struct Person { char *name; }; void change1(struct Person p); void change2(struct Person *p); int main() { /*************************************************** *结构体和函数 * 1、当结构作为函数的参数时,只是将实参结构体所有成员的值对应地赋值给了 * 形参结构体的所有成员 * 2、当结构体形参是指针时,会影响外面结构体的值 * *注意结构体类型的定义要在函数前面 ****************************************************/ struct Person p = {"test"}; change1(p); //不会改变结构体变量的值 printf("name = %sn", p.name); change2(&p); //可以改变结构体变量的值 printf("name = %sn", p.name); return 0; } void change1(struct Person p) { p.name = "changed"; } void change2(struct Person *p) { p->name = "changed"; }
name = test
name = changed
转载于:https://www.cnblogs.com/heml/p/3530964.html
最后
以上就是自由蜡烛为你收集整理的C语言结构体和函数的全部内容,希望文章能够帮你解决C语言结构体和函数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复