c语言结构体定义的几种形式

转自https://blog.csdn.net/ziguo2010/article/details/79897327

1、最常用定义方式:定义结构体data,此时结构体相当于一个类型,比如int,如需使用此结构体,方法同int

struct data
{
    char aa;
    char bb;
    char cc;
    int  dd;

};

struct data sum1, sum2;

2、定义结构体data同时,定义需要使用的结构体变量sum1,sum2。如后面再需要定义结构体变量,方法同1

struct data
{
    char aa;
    char bb;
    char cc;
    int  dd;
}sum1, sum2;

struct data sum3;

3、定义结构体时,结构体名称缺省,同时定义结构体变量sum1,sum2。但后面不可再定义结构体变量!

struct
{
    char aa;
    char bb;
    char cc;
    int dd;
}sum1, sum2;

struct sum3;  <-  编译器报错

4、使用typedef 定义结构体,定义结构体data时,使用typedef,此种形式几乎不使用,再定义结构体变量时,仍需加struct,否则编译器报错!

typedef struct data

{
    char aa;
    char bb;
    char cc;
    int dd;
};

struct data sum3;

5、使用typedef定义结构体同时,给data结构体别名DATA,后续定义可不用使用struct data,直接使用DATA即可。

typedef struct data
{
    char aa;
    char bb;
    char cc;
    int dd;
}DATA;

struct data sum3; <- 可用,但不推荐

DATA sum1; <- 最常用方式

6、使用typedef定义结构体时,省掉结构体第一个别名data,直接在后面加DATA,使用方法同5。

typedef struct
{
    char aa;
    char bb;
    char cc;
    int dd;
}DATA;

DATA sum3;

原文地址:https://www.cnblogs.com/zhongguo135/p/9491615.html

时间: 2024-08-24 14:38:18

c语言结构体定义的几种形式的相关文章

C语言结构体定义的几种方法

什么是结构体? 在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类.结构体可以被声明为变量.指针或数组等,用以实现较复杂的数据结构.结构体同时也是一些元素的集合,这些元素称为结构体的成员(member),且这些成员可以为不同的类型,成员一般用名字访问. 结构体的定义: C语言结构体类型的定义模板大概为: struct 类型名{ 成员表列 } 变量; 在成员表列中可以是几种基本数据类型,也可以是结构体类型. struct 类

C语言-结构体定义的几种方式

若struct后面接的是名字,则其为该结构体的名称.第一种是最基本的结构体定义,其定义了一个结构体A. struct A //第一种 { int a; }; 第二种则是在定义了一个结构体B的同时定义了一个结构体B的变量m. struct B //第二种 { int b; }m; 第三种结构体定义没有给出该结构体的名称,但是定义了一个该结构体的变量n,也就是说,若是想要在别处定义该结构体的变量是不行的,只有变量n这种在定义结构体的同时定义变量才行. struct //第三种 { int c; }n

c 语言结构体struct的三种定义方式 及 typedef

struct 结构体名{ 成员列表: ..... }结构体变量: 结构体类型变量的定义 结构体类型变量的定义与其它类型的变量的定义是一样的,但由于结构体类型需要针对问题事先自行定义,所以结构体类型变量的定义形式就增加了灵活性,共计有三种形式,分别介绍如下: 1) 先定义结构体类型,再定义结构体类型变量:struct stu / *定义学生结构体类型* /{     char name[20]; / * 学生姓名* /     char sex; / * 性别* /     long num; /

C语言结构体初始化的四种方法

定义 struct InitMember{    int first:    double second:    char* third:    float four;}; 方法一:定义时赋值 struct InitMember test = {-10,3.141590,"method one",0.25}: 需要注意对应的顺序,不能错位.方法二:定义后逐个赋值 struct InitMember test: test.first = -10;test.second = 3.14159

结构体定义的几种常见方式

1.最常用定义方式:定义结构体data,此时结构体相当于一个类型,比如int,如需使用此结构体,方法同int struct data { ????char?aa; ????char?bb; ????char?cc; ????int?dd; }; ?struct data sum1, sum2; 2.定义结构体data同时,定义需要使用的结构体变量sum1,sum2.如后面再需要定义结构体变量,方法同1 struct data { ????char aa; ????char bb; ????cha

C语言结构体初始化的三种方法

直接上示例了 #include <stdio.h> struct student_st { char c; int score; const char *name; }; static void show_student(struct student_st *stu) { printf("c = %c, score = %d, name = %s\n", stu->c, stu->score, stu->name); } int main(void) {

黑马程序员--C语言结构体

一.结构体和数组的区别: 数组:只能由多个相同类型的数据构成: 结构体:可以由多个不同类型的数据构成: 二.结构体定义的三种形式: 1 int main() 2 3 { 4 5 //结构体定义的3种形式 6 7 //1. 定义结构体的时候声明变量 8 9 struct Person 10 11 { // 里面的三个变量可以成为结构体的成员或者属性 12 13 double weight; 14 15 char *name; 16 17 int age; 18 19 20 21 } stu,stu

C语言结构体(struct)常见使用方法(转)

本文转自 CSDN huqinweI987 基本定义:结构体,通俗讲就像是打包封装,把一些有共同特征(比如同属于某一类事物的属性,往往是某种业务相关属性的聚合)的变量封装在内部,通过一定方法访问修改内部变量. 结构体定义: 第一种:只有结构体定义 [cpp] view plaincopy struct stuff{ char job[20]; int age; float height; }; 第二种:附加该结构体类型的“结构体变量”的初始化的结构体定义 [cpp] view plaincopy

C语言结构体(struct)常见使用方法

基本定义:结构体,通俗讲就像是打包封装,把一些有共同特征(比如同属于某一类事物的属性,往往是某种业务相关属性的聚合)的变量封装在内部,通过一定方法访问修改内部变量. 结构体定义: 第一种:只有结构体定义 [cpp] view plain copy struct stuff{ char job[20]; int age; float height; }; 第二种:附加该结构体类型的“结构体变量”的初始化的结构体定义 [cpp] view plain copy //直接带变量名Huqinwei st