数据结构(三)结构体的使用

定义赋值结构体变量
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<stdio.h>
struct Student {
int sid;
char name[100];
int age;
};
int main(void) {
struct Student st = {1000,"zhangsan", 20};
//结构体变量第一种赋值方式
//st.sid = 99;

//结构体第二种赋值方式
struct Student *pst;
pst = &st;
pst->sid = 99;//pst->sid等价于(*pst).sid
/*
注意事项:
结构体变量不能进行加减乘除,但可以相互赋值,普通结构体变量和结构体变量和结构体指针作为 函数传参问题
*/
return 0;
}
结构体变量输入输出
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include<stdio.h>
#include <string.h>
struct Student {
int sid;
char name[100];
int age;
};
void g(struct Student st);
void g2(struct Student *pst);
void f(struct Student *pst);
int main(void) {
Student st;
f(&st);
g(st);
g2(&st);
return 0;
}
void g(struct Student st) {
printf("%d %s %d\n",st.sid, st.name,st.age);
}
void g2(struct Student *pst) {
printf("%d %s %d\n", pst->sid, pst->name, pst->age);
}
void f(struct Student *pst) {
(*pst).sid = 99;
//这里不能直接赋值,C语言不支持
strcpy(pst->name, "zs");
pst->age = 22;
}

数据结构(三)结构体的使用
https://www.eldpepar.com/iecore/11569/
作者
EldPepar
发布于
2022年7月3日
许可协议