我是靠谱客的博主 干净灰狼,最近开发中收集的这篇文章主要介绍C语言中使用结构体,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1、先定义结构体

struct stu

{

  char name[20];

  long number;

  float score[4];

} ;

再定义指向结构体类型变量的指针变量:

struct stu *p1, *p2 ;或者

struct stu p1, p2 ;

定义指针变量p 1、p 2,分别指向结构体类型变量。

2、

在定义类型的同时定义变量,如

struct student{

  char name[20];

  long number;

  float score[4];

}student1, student2;

 

3、直接定义结构类型变量,如

struct{

  char name[20];

  long number;

  float score[4];

}student1, student2;

 

注意:

定义的结构体如果是指针,访问成员时就用“->”如果定义的是结构体变量,访问成员时就用“.”这个使用方式大家在初学STM32的的时候在库函数中会遇到的,

 

4、

struct和typedef struct的区别

 

 (1)在C中定义一个结构体类型要用typedef:typedef structStudent {

             char name[20];

             long number;

             float score[4];

          }Stu; 

在声明变量的时候就可:Stu stu1;(如果没有typedef就必须用struct Student stu1;来声明)

这里的Stu实际上就是struct Student的别名。Stu==struct Student另外这里也可以不写Student(于是也不能struct Student stu1;了,必须是Stu stu1;)

typedef struct {

      char name[20];

      long number;

      float score[4];

 }Stu;    

但在c++里很简单,直接structStudent {

      char name[20];

      long number;

      float score[4];

};

于是就定义了结构体类型Student,声明变量时直接Student stu1,stu2;

(2)在c++中如果用typedef的话,又会造成区别:struct  Student  {  

      char name[20];

      long number;

      float score[4];

 }stu1;//stu1是一个变量  

typedef  struct   Student2   {  

      char name[20];

      long number;

      float score[4];

 }stu2;//stu2是一个结构体类型=structStudent  

    使用时可以直接访问stu1.a 但是stu2则必须先   stu2 s2;    

然后    s2.a=10;

最后

以上就是干净灰狼为你收集整理的C语言中使用结构体的全部内容,希望文章能够帮你解决C语言中使用结构体所遇到的程序开发问题。

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部