计算机学习之旅——C语言(数据类型)

1.前言

计算机可以在程序的指导下完成各种各样的任务,但要完成这些任务,程序需要使用数据,即承载 信息的数字或字符。有些数据在程序使用之前已经预先设定好了,在整个程序的运行过程中没有变化,这些称为常量。其他数据类型在程序运行期间可能会改变或被赋值,这些称为变量。

不仅变量和常量不同,不同的数据类型之间也有差异。一些数据类型表示数字,一些数据类型表示字母(或者说字符)。C通过识别一些基本的数据类型来区分和使用这些不同的数据类型。

2.基本数据类型关键字

在C语言中存在着许多的数据类型,按照计算机的存储方式可以将数据分为两大基本类型:整数类型和浮点类型。不过我们习惯上更多的是将之分为三大基本类型:整数类型、浮点类型以及字符类型。

以下列出了部分常用的数据类型:

int 整形

char 字符型

short 短整型

long 长整型

float 单精度浮点型

double 双精度浮点型

3.基本数据类型

3.1整形

int类型是有符号整型。这里提到的符号指的是数学中的正负号,也就意味着int类型可以是正整数、负整数或零,但是int类型的值必须是整数。存储一个int类型的数值所需的空间大小为4个字节,可以表示的数值范围为-2147483648~2147483647(2^31~2^31-1)

short int类型(或者简写为short)占用的存储空间比int类型少,只需要2个字节,可以表示的数值范围为-32768~32768,常用于较小数值的场合以节省空间。

long int或long占用的存储空间可能比int多,所需的空间大小为4个字节,可以表示的数值范围为-2147483648~2147483647,适用于较大数值的场合。

unsigned int或unsigned只用于非负值的场合。上述的short int、long int和int类似,都是有符号类型,但是unsigned int或unsigned属于无符号类型,其表示的范围也有所不同。例如,unsigned int允许的取值范围是0~4294967298,而不是-2147483648~2147483647。在有符号类型中,会用一个二进制位表示正负号,但是在无符号类型中,用于表示正负号的位现在用于表示另一个二进制位,所以无符号整型可以表示更大的数。

除了unsigned int是无符号类型外,还有unsigned long int、unsigned long、 unsigned short。

3.2 浮点型

C语言中的浮点类型有float、double和long double 类型。

float在内存中占4个字节,取值范围是-3.4*10^-38~3.4*10^38,并且必须至少能表示6位有效数字.

double在内存中占8个字节,取值范围是-1.7*10^-308~1.7*10^308,并且必须值至少有13 位有效数字。

C语言的第3种浮点类型是long double,以满足比double类型更高的精度要求。不过,C只保证long double类型至少与double类型的精度相同,其取值范围也和double一致。

3.3字符型

char类型用于储存字符(如,字母或标点符号),但是从某种层面上来看, char也是整数类型。因为char类型实际上储存的是标准ASCII码中的编码,而编码是整数不是字符。标准ASCII码的范围是0~127,只需7位二进制数即可表示,所以char所需空间是1个字节。

但是我们会发现有一些 ASCII字符打印不出来。例如,一些代表行为的字符(如,退格、换行、)。C语言提供了3种方法表示这些字符。

1.使用ASCII码

例如:\n

#include<stdio.h>
int main()
{
    char ch=10;
    printf("%c",ch);
    return 0;
}

2.使用特殊的符号序列表示一些特殊的字符。

 

 4.结语

本文简单的阐述了整形、字符型、浮点型三种基本数据类型,事实上C语言还包含基本类型中的枚举类型,构造类型中的数组类型、结构体类型、共用体类型,以及指针类型。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值