C语言数据结构类型和变量(1)

[壹]数据结构类型

一.数据结构类型介绍

(一)内置类型          

⑴字符型     

char

[signed] char   //有符号的

unsigned  char   //无符号的

*隐藏知识碎片掉落,是否拾取?*

C语言中用signedunsigned关键字修饰字符型和整型;

signed,表示该类型带有正负号,包含负值;

unsigned,表示该类型不带有正负号,只能表示零和正整数;与signed相比,同样长度的内存能够表示的最大整数值增大了一倍。

*你已拥有此碎片x1*

⑵整型         

①短整型

short  [int]              //[ ]表括号内内容可省略

[signed]  short  [int]

unsigned  short  [int]

②整型

int

[signed]  int

unsigned  int

③长整型       //sizeof(long)>=sizeof(int)

long [int]

[signed]  long  [int]

unsigned  long  [int]

④更长的整型   //C99中引入

long long [int]

[signed]  long long [int]

unsigned  long long  [int]

⑶浮点型          

①float              //单精度浮点型

②double           //双精度浮点型

③long double   

⑷布尔类型    

_Bool

false假0     true真1

(二)自定义类型

⑴数组

⑵结构体-struct

⑶枚举-enum

⑷联合体-union

 二.各种数据类型的长度

//3.14为double型,3.14f为float型

分析:

首先引入关键字sizeof

⑴sizeof用来计算sizeof的操作符的类型长度,sizeof的计算结果(返回值)的单位是字节Byte

*隐藏碎片掉落,是否拾取?*

二进制位:1    意味着1bit

1 Byte=8 bit

1 KB=1024 Byte

1 MB=1024 KB

1 GB=1024 MB

1 TB=1024 GB

*你已拥有此碎片x1*

⑵sizeof计算结果的类型是 size_t ,一种无符号整数,这种整数值在打印时使用 %zd

*知识碎片掉落,是否拾取?*

int          %d

char       %c

字符串   %s

*你已拥有此碎片×2*

 ⑶sizeof中表达式不计算

 s占2个字节,b,1都占4个字节,整型加整型等于整型(4个字节),4个字节的要放入2个字节的中,发生截断,只能放入2个字节

三.数据类型的取值范围

每一种数据类型有自己的取值范围,也就是存储的数值的最大值和最小值的区间,有了丰富的类型,我们就可以在适当的场景下去选择适合的类型。如果要查看当前系统上不同数据类型的极限值:

limits.h   这个文件说明整型类型的取值范

float.h     说明浮点类型的取值范围

[贰]变量

一.定义

变量:经常变化的值

常量:不变的值

初始化:在创建变量同时给一个初始值

//否则,局部变量赋伪随机值

二.变量类型介绍

⑴全局变量:

在大括号处部定义,哪儿哪儿都能用

⑵局部变量:

在大括号内部定义

//全局变量与局部变量冲突,优先局部变量

 *知识碎片掉落,是否拾取?*

程序运行起来要在内存中申请空间

内存:栈区 [局部变量函数参数]

     堆区 [动态内存管理]

                静态区 [全局变量静态变量]

局部变量是放在内存的栈区

   ②全局变量是放在内存的静态区

③堆区是用来动态内存管理的

*你已拥有此碎片x1*

*未完待续*

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值