服务器之家

服务器之家 > 正文

C语言结构体的具体使用方法

时间:2021-12-23 14:33     来源/作者:yycure

初识C语言结构体

1.为什么要有结构体

(1)之前int、char等类型描述的结构体非常单一,只可描述一种类型。
(2)数组也是描述同一类型的集合,只可描述一种类型。
(3)而结构体使得C语言可以描述复杂类型,比如学生类型( 包含学生的名字、年龄、性别、电话号等信息)。

结构体和数组的区别:

  • ·结构体:用来描述相同/不同数据元素类型的集合。
  • ·数组:用来描述具有相同数据元素类型的集合。

2.结构体的定义

2.1结构体类型的定义

格式:

?
1
2
3
4
5
6
7
8
struct Stu//结构体类型名字为struct Stu(struct Stu类似于int)
{
    //结构体内容
 char Name[20];
 int Age;
 char Sex[5];
 char Tel[12];
};//记着加;

注意:
(1)结构体类型的定义是在main函数外部。
(2)此处指定义了一个结构体类型,还未定义对应结构类型的变量,所以还未在内存中开辟空间。

2.2定义结构体普通变量及访问

struct Stu Tom = { “Tom”, 13, “男”, “11122546698” };
//定义结构体普通变量并初始化,变量名为Tom,用变量名访问结构体。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
struct Stu
{
 char Name[20];//名字
 int Age; //年龄
 char Sex[5];//性别
 char Tel[12];//电话号
};
 
int main()
{
 struct Stu Tom = { "Tom", 13, "男", "11122546698" };
 printf("%s,%d,%s,%s\n", Tom.Name, Tom.Age, Tom.Sex, Tom.Tel);//用变量名和结构成员运算符(.)访问结构体。
 
 return 0;
}

2.3定义结构体指针变量及访问

struct Stu *s = &Tom;
//定义结构体指针变量,s指向Tom,有如下两种访问方式。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
struct Stu
{
 char Name[20];//名字
 int Age; //年龄
 char Sex[5];//性别
 char Tel[12];//电话号
};
int main()
{
 struct Stu Tom = { "Tom", 13, "男", "11122546698" };
 struct Stu *s = &Tom;
 
 //用结构体指针运算符->访问(常用访问方式)
 printf("%s,%d,%s,%s\n", s->Name, s->Age, s->Sex, s->Tel);
 
 //s为指针变量,*s对指针解引用,代表指针所指向的内容。
 //而且用指针和结构成员运算符(.)访问结构体时,由于结构成员运算符(.)比指针引用运算符(*)的优先级高,必须代括号。
 printf("%s,%d,%s,%s\n", (*s).Name, (*s).Age, (*s).Sex, (*s).Tel);
 
 return 0;
}

C语言结构体的具体使用方法

原文链接:https://blog.csdn.net/m0_46630468/article/details/119779164

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部