c语言结构体

结构体是C/C++中常用的构造类型

在c语言中,数据类型分为基本类型(int、double、float、short、long、char)和构造类型(数组,结构体,共用体和枚举)。

我们在构建代码时,往往同种属性的变量并不属于同种基本数据类型,这样使得数组不能够满足我们当前的需求,所以结构体和共用体就应运而生了。今天我们主要讲结构体的应用。

结构体所占内存应该是大于等于成员所占内存总和。这涉及到字节对齐,这方面也是一个比较重要的点,我们在以后会详细介绍。并且各个成员在内存中的储存是连续的

一、定义

结构体的成员可以是基本的数据类型,也可以是构造类型,相对来说比较自由。

1、结构体定义的一般形式如下所示:

struct 结构体名 {
    类型名1 成员名1;
    类型名2 成员名2;
    ...
    类型名n 成员名n;
};

举例:

struct student {
    char name[10];
    float score;
    int num;
};

2、定义并声明结构体变量

struct 结构体名 {
    类型名1 成员名1;
    类型名2 成员名2;
    ...
    类型名n 成员名n;
}变量1,变量2,...;

举例:

struct student {
    char name[10];
    float score;
    int num;
}stu1,stu2;

3、定义结构体并赋初值

struct 结构体名 {
    类型名1 成员名1;
    类型名2 成员名2;
    ...
    类型名n 成员名n;
}数组[2]={
          {a,b,...,n},
          {a1,b1,...,n1}
         };

举例:

struct student {
    char name[10];
    float score;
    int num;
}stu[2]={
          {"tom",95.5,4},
          {"jhon",93,3}
        };

二、声明

在声明的时候加上关键字“struct”。

1、声明的一般形式

struct 结构体名 变量1,变量2;

举例:

struct student stu1,stu2;

2、声明时赋初值

struct 结构体名 变量1 = {a,b,...,n},变量2;

举例:

struct student stu1 = {"tom",95.5,4},stu2;

三、程序例程

#include<stdio.h>
​
//定义
struct student {
    char *name;
    float score;
    int num;
};
​
int main()
{
  struct student stu;//声明结构体
  stu.name = "Tom";//赋值
  stu.score = 95.5;
  stu.num = 4;
  printf("%s,%0.1f,%d",stu.name,stu.score,stu.num);
}

 

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值