我是靠谱客的博主 和谐魔镜,最近开发中收集的这篇文章主要介绍C中结构体、共用体基本概念一、结构体基本概念二、共用体基本概念,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

C中结构体、共用体基本概念

  • 一、结构体基本概念
    • 1、简介
    • 2、基本操作
      • 1、定义结构体类型和结构体变量
      • 2、引用结构体变量
      • 3、初始化结构体变量
    • 3、typedef定义类型的作用
  • 二、共用体基本概念
    • 1、简介
    • 2、基本操作
      • 1、定义共用体类型和变量
      • 2、引用和初始化
      • 3、注

一、结构体基本概念

1、简介

结构体属于一种构造数据类型(数组也是构造数据类型,和基本数据类型并列)。结构体不同于数组的是,若是一组不同类型的数据,则使用结构体,而不能用数组,因为数组中的数据必须是相同的数据类型。结构体是由若干个成员组成,而每个成员既可以是一个基本的数据类型也可以是一个构造数据类型。

2、基本操作

1、定义结构体类型和结构体变量

结构体定义如下:

struct 结构名{
	数据类型 成员名1
	数据类型 成员名2
	数据类型 成员名3
	...
};

例:

struct stu{
	int num;
	char name[20];
	char sex;
	float score;
};

结构体变量则是在结构体后进行声明:

struct stu{
	int num;
	char name[20];
	char sex;
	float score;
}student1,student2;
其中student1,student2是结构体变量
同时可用另一种方法声明:
struct stu{
	int num;
	char name[20];
	char sex;
	float score;
};
struct stu student1,student2

为什么要区分结构体和结构体变量呢?结构体即是一种数据类型,类似于int,float;int这种基本数据类型C已经进行了预定义。系统并不对结构体进行内存分配,而系统对结构体变量进行内存分配。同时结构体变量可以用来赋值、运算等操作。可以像基本数据类型那样去理解,如图:
在这里插入图片描述

2、引用结构体变量

在定义完结构体变量后,即可对结构体变量进行引用(赋值、存取、运算)。结构体成员的引用格式如下:

结构变量名.成员名
student1.sex = "man"; //赋值操作

3、初始化结构体变量

可以在定义结构体时初始化,也可以在定义完结构体后再进行初始化:

struct stu{
	int num;
	char name[20];
	char sex;
	float score;
}student1,student2={102,"法外狂徒张三","man",60};
另一种方法:
struct stu{
	int num;
	char name[20];
	char sex;
	float score;
};
struct stu student2={102,"法外狂徒张三","man",60};

3、typedef定义类型的作用

typedef主要用来为自定义数据类型提供简洁的类型名称。比如:

typedef struct stu{
	int num;
	char name[20];
	char sex;
	float score;
};
stu student1; //此时声明变量时已不再需要前面的struct

二、共用体基本概念

1、简介

共用体基本与结构体相同,不同点是结构体中各个成员都有自己的存储单元,而在共用体中,成员共用一段内存,内存的长度是最长的那个。

2、基本操作

1、定义共用体类型和变量

union 标识符
	{成员表};
union ssr
	{int i;
	 char c;
	 float f;
	 }s1,s2;

2、引用和初始化

初始化和引用同结构体。

3、注

注:另外有结构体数组、结构体指针、函数中的结构体,这里不做介绍。

最后

以上就是和谐魔镜为你收集整理的C中结构体、共用体基本概念一、结构体基本概念二、共用体基本概念的全部内容,希望文章能够帮你解决C中结构体、共用体基本概念一、结构体基本概念二、共用体基本概念所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部