linux学习笔记之——C语言的基本类型

世界万物,都有其类型,C语言也不例外。

C语言的基本数据类型有:

 

整型        int

字符型    char

浮点型    float(单精度)  double(双精度)

枚举型 enum

结构体 struct

共用体 union

空类型  void

数组类型

指针类型

 

一、那么类型是什么呢?

如此类型,在初学之时必定让人头晕眼花,曾经的死记硬背也让人伤透了脑筋。但是若换一个角度去记忆去理解那么就会轻松很多。

就好比盛东西的容器,有茶杯,有水杯,有碗,有锅,有壶。这些东西是以什么来分的呢,以盛东西的多少和盛东西的种类以及用法不同来分的。

就好像,茶杯。用来盛茶水的,不大,闲来无事时品茶所用容器。那为什么茶杯不大呢?难道你见过拿一个缸喝茶的人吗?茶杯的大小,就是人们的习惯,人们习惯了用这么大的杯子品茶,久而久之,茶杯就这么大了。不大不小。若觉得用小茶杯喝茶不爽,那你换个缸来喝茶也可以吗~茶杯可以盛茶水,口杯也能,壶也能,都能盛,就是看你习惯如何了。

类比着来看char型(字符型)。八位,范围是0-255。那为何它要是八位是0-255呢?一般人们都用char来盛放一个a,或者盛放一个5。因为这些个东西的arcll码正好是八位,用来盛一个字符恰好不过了。当然你也能用int型来盛放它,但是你不觉得很烧包吗?用一个缸盛一小杯茶水,然后抱起缸来慢慢喝。这是一种对资源莫大的浪费啊。

int型,一般用来盛数字,范围是0-4294967259。可以用来盛放很大很大的数字。这时候你用char来盛就不合适了。因为char根本装不下。

这就是类型,其实就是C语言中的各种容器,用来盛放各种各样的数据。不要问为什么,只是记住,这是前辈们一代一代总结出的最好的容器,他们为我们创造好了容器,我们就拿来直接用好了嘛,何必要去追根溯源呢?难道你弄不明白碗为什么是碗就不吃饭了吗?

 

二、类型的具体分类。

类型所在的世界也是一代乱世,诸侯割据。一家子一家子各自圈地,以撒尿留气味儿的方式占据着自己的地盘。

他们是:

 

1、整形家族

1)整形家族简介

int为大哥的家族,他们的成员分别是:intshortlong。是一堆安居乐业的好青年,奈何生在乱世,戎马不断。

2)整形家族一览

类型([ ] 表示可以省略        比特数(即占多少位)           取值范围

[signed] int                  32                            -2147483648-2147483647

unsigned int                 32                            0-4294967295

[signed] short           16                      -32768-32767

unsigned short               16                            0-65535

[signed] long       32            -2147483648-2147483647

signed long       32               0-4294967295

这不是明明有6个类型吗,为什么说他们只有三个呢?因为int unsigned int 是同一个人,本来int是有血有肉有正有负的大好青年,但是因为感情受挫,加上党的需要,它就变成了一个直男,从此只正不负。shortlong也是一样,他们为我们的社会主义现代化做出了应有的贡献,变成直男。

有一点需要注意,long类型和short类型会根据不同位数的机子而改变大小。但有一条原则不变。

short<= int <= long

3)整型常量

整型常量需特别注意的是

0开头的是八进制,以0x开头的是16进制,没有开头的是10进制。

整型常量中只能用来存这三种进制的进制数。

八进制举例 0762 010 0537

十六进制举例 0x0000 0x0f32

十进制就不用举例了吧,自己翻小学课本自然数那章。

2、实型家族

1)实型家族简介

实型家族人少,但是凶猛,就俩人,floatdouble。别看人少,他们可是北方游牧少数民族。一个个块大的不得了,能吃能打能跑能跳。多少敌人都跪倒在了他们面前。但是他们在一般程序中利用率并不高,只有在图像处理方面以及一些高端运算时用处颇大。

2)实型家族一览

类型([ ] 表示可以省略        比特数(即占多少位)           取值范围

float                        32                            这个自己查书吧,那个平方我打不出来

double                      64 同上

long double    64 同上

3)实型常量

C语言中,实型常量只采用十进制。它有两种形式:十进制数形式和指数形式。所有浮点常量都被默认为double型。(这段抄书的。。。。。。。)

3、字符型家族

1)字符型家族简介

字符型家族人少,就一个光杆司令,char。可怜的字符型家族是南方蛮族,蛮,但是实力有限,人还少,最多也就能起到骚扰作用。但是用处广泛,深的人们喜爱,尤其南方蛮族的妹子好卵水灵的嘞~

2)字符型家族一览

类型([ ] 表示可以省略        比特数(即占多少位)           取值范围

Char                        8                             0-255

3)字符常量

赋值时只能用‘’引起来,别的一律不行。

char a = b’;

4、枚举家族

1)枚举家族简介

这是一帮住在中国西部沙漠中的家族,人不知道多少,但基本见不到,战斗力未知,人数未知,生存条件未知。。。。

2)这货没有一览,因为是一种自定义的类型。举个例子好了,主要是学习记住它的语法结构

enum sgp_type{

Sgp_quick,

Sgp_read,

Sgp_cache,

}(这例子也是抄书的哦啦啦啦~我是搬运工~

这里面的Sgp_quickSgp_read,Sgp_cache就被分别定义为了0,1,2。以此类推。

5)指针家族

这货是外星来的。。。。。。。。

外星人入侵了。。。。。。。。。。

全地球警戒。。。。。。。。。。。。

(在这里不说这货了,等到指针的时候再具体讲。。。。。外星人真的入侵了。。。。)

 

 

 

 

 

ps:仅仅是一些记录和自己的一些见解,不喜勿喷,若有错误之处,敬请指正。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值