C_结构体_朱

本文详细介绍了结构体的概念及其在数据组织中的应用。结构体作为一种复合数据类型,能够将不同类型的数据组合在一起形成新的数据单元。文章还对比了结构体与数组的区别,并通过实例演示了如何定义和初始化结构体。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

结构体

为什么使用结构体?

     在没有结构体之前,数据的组织依靠的是:变量+数组,但是后来需要的变量多了,所含变量的数据类型也都有不同,而数组结局的问题中所需要变量的数据类型是一样的,此时结构体就能够解决这种数据类型不同的问题。

什么是结构体(关键词—struct)?

        结构体是一个集合,集合中包含很多元素,这些元素的数据类型可以相同,也可以不同,所以  结构体是一种数据封装的方法,以至于组成一个大而新的数据类型。

        数据结构:把庞大复杂的数据用一定的方式组织管理起来,便于操作(查找,增加,删除等)。

结构体和数组的关联

        数组是一种特殊的结构体,特殊之处在于数组封装内的各个元素类型是相同的。

        结构体和数组都是对一些子元素进行封装,因此定义的时候都是封装作为整体定义,但是用的时候,都是使用封装中的子元素。一般结构体变量和数组变量都不会作为一个整体操作。

结构体使用的步骤

第一步:定义结构体类型,在函数的外面进行定义(也就是全局)。

第二步:使用第一步定义的类型来定义结构体变量。

第三步:使用变量,实际上是使用结构体变量的时候,使用的是结构体变量中封装的各个子元素,而不是结构体变量本身。

结构体初始化

        结构体变量和普通变量一样,作为局部时,定义的时候没有初始化也没有显示赋值,那么结构体变量中各元素的值是随机的。

第一种:完全初始化(X, X, X, X);

第二种:部分初始化

{

.a = x;

.b = x;

.c = x;

}

例如:

#include"stdiio.h"

struct Mystruct//定义一个结构体Mystruct

{

    //添加不同类型的元素

   int a;

   char b;

    float c;

   double d;

};//此处的;不能丢

ina main()

{

   Mystruct s;//定义变量s,类型是struct Mystruct

    //给结构体里面的元素赋值

    s.a = 1;

   s.b = 'a';

   s.c = 3.141;

   s.d = 3.141592;

   s.a += 1;

   printf("s.a = %d\n", s.a);

   s.b = 'y';

    printf("s.b = %c\n", s.b);

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值