结构体类型定义(C语言)

Posted winifredhpcl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了结构体类型定义(C语言)相关的知识,希望对你有一定的参考价值。

结构体的定义形式如下:

struct 结构体名

{

  结构体成员

};

结构体变量的定义方式有三种:
1、先定义结构体,再定义变量:

eg.

struct student{

  char name[10];

  int age;

  int student_number;

};

struct student s1,s2;

2、定义结构体的同时定义变量:
eg.

struct student{

  char name[10];

  int age;

  int student_number;

}s1,s2;

在定义结构体student的同时定义了结构体变量s1,s2.

3、只定义结构体变量

eg.

struct{

  char name[10];

  int age;

  int student_number;

}s1,s2;

在这种情况下,如果还想定义一个变量s3,那么要使用和定义s1、s2一样的方法。

 

将typedef和结构体结合,比如说:

typedef struct _student{

  char name[10];

  int age;

  int student_number;

}student;

这个时候student就不是一个变量了,它是结构体struct _student的别名,如果想定义一个变量,就可以直接使用student

student s1;

而不需要struct _student s1;

另外还可以定义结构体指针类型:

typedef struct _student{

  char name[10];

  int age;

  int student_number;

}*student;

这个时候student s1;定义的变量就是一个结构体指针s1了。等价于struct _student *s1。

以上是关于结构体类型定义(C语言)的主要内容,如果未能解决你的问题,请参考以下文章

c语言如何定义结构体变量

C语言,结构体

讲讲go语言的结构体

C语言中结构体的理解

C语言源文件之间的自定义类型(结构体)如何相互引用?

c语言数据结构中结构体定义问题