//
// main.c
// C语言学习
#include <stdio.h>
void change(int value)
{
value = 99;
}
//定义一个结构体类型
struct Person
{
int age;
char *name;
};
void change2(struct Person value)
{
value.age = 99;
}
void change3(struct Person *p)
{
p->age =998;
}
int main(int argc, const char * argv[]) {
struct Person sp = {18,"ykd"};
//1.将结构体的属性传递给函数,在函数中修改
printf("age=%i\n",sp.age); //age=18
change(sp.age);
printf("age=%i\n",sp.age); //age=18
//前后没有改变值
//2.将结构体名称作为参数传递,在函数中修改形参不会影响到实参
//因为结构体之间赋值是值传递,系统会将A结构体的值 拷贝一份到 B结构体中
change2(sp); //调用change2函数
printf("age=%i\n",sp.age); //age=18
//3.传递指针。会改变值
change3(&sp);
printf("age=%i\n",sp.age); //age=998
return 0;
}
结构体和函数
最新推荐文章于 2023-08-17 18:05:03 发布