c语言 声明类型,C语言基础 之 复合数据类型和类型定义

复合类型是一种自定义类型,用于扩展基本数据类型。

复合数据类型包括:结构类型、共用体类型和枚举类型。

用 typedef 定义新类型名

C语言允许用 typedef 定义已知类型的新类型名(别名)。

格式:typedef 类型名 标识符;

说明:

类型名必须是之前已经定义的类型标识符

标识符是用户定义的用作一直类型的新类型名的标识符

标识符通常用大写字母表示

原有类型名仍然有效

typedef int INTEGER

INTEGER a,b;

int a,b; //等价于

结构体

结构体类型的说明

C语言的基本数据类型有整型、浮点型、字符型、双精度型

结构体类型的定义

形式:

struct 结构体标识名

{

成员列表

类型说明符 结构成员名;

};

示例

struct student

{

int num;

char name[12];

char sex;

float score;

};

注意

“struct”是定义结构类型的关键字,不可忽略

成员列表是对结构类型中各成员组成的一个说明,分号不可忽略

结构类型定义作为一条语句,最后一个花括号的分号不可忽略

结构体类型的变量、数组和指针变量的定义

结构变量说明三种方法

先定义结构,然后说明结构变量(主推)

struct student

{

int num;

char name[12];

char sex;

float score;

};

struct student zhang,liu;

在定义结构类型的同时说明变量

struct student

{

int num;

char name[12];

char sex;

float score;

}zhang,liu;

直接说明结构变量

struct //无student

{

int num;

char name[12];

char sex;

float score;

}zhang,liu;

定义结构体类型的指针、数组

struct student class[3]

struct student *pstu1;

结构类型的嵌套有两种形式

一种是直接嵌套定义在内部、一种先写好小的结构体类型在把它放到大的结构体中

给结构体变量、数组赋初值

给结构体变量赋值就是给各个成员赋值

简单、嵌套结构体变量的初始化,在定义变量的同时初始化该变量

struct worker

{

int num;

char name[12];

char sex;

float salary;

}sun={158,"sunbing",'m',5500};

另外,给结构体变量赋值也可以先定义结构体变量,然后分别对各个成员进行初始化赋值,但是需要用到成员运算符 “ . ”。

sun.num=101;

结构体变量中的数据引用

表示结构变量的一般形式

结构体变量名.成员名

sun.num

stu[i].score

另外,嵌套结构必须逐级找到最低级成员才能使用

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值