#include <stdio.h>
#include <stdlib.h>
#include <string>
struct programer {
char name[32];
int age;
int salary;
};
struct programer add_salary(struct programer p, int num) {
p.salary += num;
return p;
}
void add_salary1(struct programer* p, int num) {
if (!p) return;
p->salary += num;
}
void add_salary2(struct programer& p, int num) {
p.salary += num;
}
struct programer& add_salary3(struct programer p, int num) {
p.salary += num;
return p;
}
int main(void) {
struct programer xiaoniu;
strcpy_s(xiaoniu.name, "小牛");
xiaoniu.age = 28;
xiaoniu.salary = 20000;
//xiaoniu = add_salary(xiaoniu, 10000); //第一版 返回值,不带引用
//add_salary1(&xiaoniu, 5000); //第二版 使用指针
//add_salary2(xiaoniu, 10000); //第三版 使用引用
//xiaoniu = add_salary3(xiaoniu, 20000); //第四版,返回值引用
printf("姓名: %s 年龄: %d 薪水: %d\n", xiaoniu.name, xiaoniu.age, xiaoniu.salary);
system("pause");
return 0;
}
结构体常用访问方法
最新推荐文章于 2024-04-12 23:02:46 发布