如何使用指针输出结构体中的内容
需要解决的问题:
使用指针输出结构体Stu中四个成员 name age sex tele 的内容,
分别为huangchengzi 18 nan 13842904233
解决问题
1.构建结构体
2.主函数
3.构建新的函数用于输出结构体内容(用指针)
🧀构建结构体
struct Stu
{
char name[20];
int age;
char sex[5];
char tele[12];
};
🧀主函数
int main()
{
struct Stu s = {"huangchengzi",18,"nan","13842904233"};
return 0;
}
🧀 构建新的函数
void print(struct Stu* ps)//创建指针变量ps
//*说明ps是指针变量,struct Stu 说明ps指向的对象是struct Stu类型
{
//打印
printf("%s %d %s %s\n", (*ps).name, (*ps).age, (*ps).sex, (*ps).tele);
//*ps:指的是对ps解引用,*ps就是ps所指向的对象s
//更简洁的方法
printf("%s %d %s %s\n", ps->name, ps->age, ps->sex, ps->tele);
//ps直接用箭头指向对象的成员
}
int main()
{
struct Stu s = {"huangchengzi",18,"nan","13842904233"};
print();
return 0;
}
完整代码以及运行结果
操作符 ->
结构体的指针变量-> 成员名
操作符 .
结构体对象.成员名
补充:不使用指针如何输出
只需要在主函数中调用printf函数即可
printf("%s %d %s %s\n",s.name,s.age,s.sex,s.tele);