码迷,mamicode.com
首页 > 编程语言 > 详细

c语言---struct

时间:2018-01-09 14:38:26      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:--   结构   直接   合数   声明   gre   def   wiki   不同的   

今天打C语言突然发现struct都不会用了,实话说struct我是一直蒙的,今天2018/1/9,好好解读一下这struct。
 
在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类。结构体可以被声明为变量、指针或数组等,用以实现较复杂的数据结构。结构体同时也是一些元素的集合,这些元素称为结构体的成员(member),且这些成员可以为不同的类型,成员一般用名字访问。
//struct为结构体关键字,Mark为结构体的标签,member为结构体成员,Variable为该结构体声明的变量
struct Mark{
  member;
} Variable;

struct 标签{
  成员;
}变量名;

一般情况下,Mark、member、Variable这三个部分至少要出现两个。

//此声明声明了拥有3个成员的结构体,同时声明了结构体变量data。
struct{
  int day;
  int month;
  int year;
}data;

//此声明声明了和成员上面一样的结构体,但是没有声明变量,但结构体的标签被命名为Data。
struct Data{
  int day;
  int month;
  int year;
};
//如果要声明变量,通过如下方式:
struct Data d1,d2[10],*d3;

//用typedef创建新类型
typedef stuct{
  int day;
  int month;
  int year;
}Data;
//可以用下面方式声明变量
Data d4,d5[10],*d6;
结构体成员访问
结构体成员依据结构体变量类型的不同,一般有2种访问方式,一种为直接访问,一种为间接访问。直接访问应用于普通的结构体变量,间接访问应用于指向结构体变量的指针。直接访问使用结构体变量名.成员名,间接访问使用(*结构体指针名).成员名或者使用结构体指针名->成员名。相同的成员名称依靠不同的变量前缀区分。
 
参考:https://zh.wikipedia.org/wiki/%E7%BB%93%E6%9E%84%E4%BD%93_(C%E8%AF%AD%E8%A8%80)

c语言---struct

标签:--   结构   直接   合数   声明   gre   def   wiki   不同的   

原文地址:https://www.cnblogs.com/glasses/p/8251010.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!