目的:
指针的优点之一:
快速的传递数据,
耗用内存小
执行速度快
# include <stdio.h>
# include <string.h>
struct Student
{
int age;
char sex;
char name[100];
}; //分号不能省
void InputStudent(struct Student *);//输入必须发地址
void OutputStudent(struct Student );
//void OutputStudent(struct Student *);
int main(void)
{
struct Student st; //15行
InputStudent(&st); //对结构体变量输入 必须发送st的地址
// printf("%d %c %s\n", st.age, st.sex, st.name);
OutputStudent(st); //对结构体变量输出 可以发送st的地址也可以直接发送st的内容
//OutputStudent(&st);//为了减少内存的耗费,也为了提高执行速度,推荐发送地址
return 0;
}
//输出数据
void OutputStudent(struct Student pst//struct Student * pst)
{
printf("%d %c %s\n", pst.age, pst.sex, pst.name);
//printf("%d %c %s",pst->age,pst->sex,pst->name)
}
//输入数据
void InputStudent(struct Student * pstu) //pstu只占4个字节
{
(*pstu).age = 10;
strcpy(pstu->name, "张三");
pstu->sex = 'F';
}
/*
//本函数无法修改主函数15行st的值 所以本函数是错误的
void InputStudent(struct Student stu)//类似于之前两个数交换
{
stu.age = 10;
strcpy(stu.name, "张三"); //不能写成 stu.name = "张三";
stu.sex = 'F';
}
*/
通过函数完成对结构体变量的输入和输出
最新推荐文章于 2024-03-17 00:14:07 发布