c语言字符类型包括哪些 3分钟了解c语言基本数据类型

C语言支持的基本数据类型通过前面的例子分析,我们知道了房子的类型,决定了房子的属性。比如一套一居室的房子,有空个房间;两室一厅的房子空。同样,在C语言中,提供了“数据类型”,可以定义变量。不同数据类型定义的变量有不同的存储空和用法。C支持的基本数据类型有:(1)...

C语言支持的基本数据类型

通过前面的例子分析,我们知道了房子的类型,决定了房子的属性。比如一套一居室的房子,有空个房间;两室一厅的房子空。同样,在C语言中,提供了“数据类型”,可以定义变量。不同数据类型定义的变量有不同的存储空和用法。

C支持的基本数据类型有:

(1) char型,即所谓的“字符”型。一个字符是‘一’, ‘B’, ‘C & # 8217, ‘#’, ‘!’这样的数据。char类型的变量称为字符变量,可以存储字符。类型变量char占用1个字节的存储空。

(2)短型,称为“短整数”。用来存储一个整数值,比如100,188,short类型变量占用2个字节的存储空。

(3) int类型,称为“整数”。用来存储整数值,int类型变量占用4字节存储空。

(4)长型,称为“长整数”。用来存储一个整数值,long类型的变量占用4 bytes 空的存储空间。再者,long类型可以组合成long long类型,占用8个字节的存储空。

(5)浮点型,称为“单精度浮点型”。它存储一个带小数点的浮点数,如12.345和16.888。float类型变量占用4个字节的存储空。

(6)双型。双精度型称为“双精度浮点数”。它存储一个浮点数,double变量占用8个字节的存储空。

对于char、short、int和long类型,默认为“有符号数”类型,因此可以表示负数。然后,它们可以与unsigned关键字结合使用来表示无符号类型数据。

注意:由float和double表示的浮点数不能与unsigned关键字结合使用。

我们可以在下表中总结“有符号数类型”和“无符号数类型”的存储容量和取值范围。

数据类型容量(位数)取值范围char8(1个字节)-128 ~ 127(-2^7 ~ 2^7-1)unsigned char8(1个字节)0 ~ 255(0 ~ 2^8 – 1)short16(2个字节)-32767 ~ 32768(-2^15 ~ 2^15-1)unsigned short16(2个字节)0 ~ 65536(0 ~ 2^18-1)int32(4个字节)-2147483***8 ~ +2147483***7(-2^31 ~ 2^31-1)unsigned int32(4个字节)0 ~ 4294967295(0 ~ 2^32-1)long32-2147483***8 ~ +2147483***7(-2^31 ~ 2^31-1)unsigned long320 ~ 4294967295(0 ~ 2^32-1)long long***-9223372036854775808 ~9223372036854775807(-2^63 ~ 2^63-1)unsigned long long***0 ~ 18446744073709551615(0 ~ 2^***-1)

char类型的最大值是2 ^ 7-1,unsigned char类型的最大值是2 ^ 8-1。可以看到,由于char类型变量的最高位被用作符号位,所以只有7位被用作数值位,而无符号char类型变量的所有8位都被用作数值位。所以能代表最大值的范围是不一样的。假设一个变量的数值位有n位,那么可以表示的最大值是2的n次方减一,也就是2^n –1。例如,数字位是1111 1111。此时数值位有8位,所以它的值是1 * 2 0+1 * 2 1+1 * 2 2 3+1 * 2 4+1 * 2 5+1 * 2 6+1 * 2。如果这个计算是繁琐的,那么我们可以认为:

1111 1111 + 1 = 1 0000 0000

所以,有:

1111 1111 = 1 0000 0000 – 1

= 1*2^8 –一个

这样计算,可以快速得到N位全1的二进制,其值为2n–1。

5.1字符类型

在C语言中’一’、’B’、’C & # 8217、’#’、’?’这样的符号就是字符。字符可以存储在字符变量中。字符的特征是:

(1)必须使用单引号‘‘包括字符;

(2)字符可以是ASCII表中字符集的字符;

c语言提供了关键字char来表示“字符类型”;可以定义字符类型的变量;例如:

该程序的输出如下:

可以看到,char关键字用来定义字符型的变量,分别定义了变量A和变量B,都是字符型,变量A用’X & # 8217字符,它们存储在B变量’Y & # 8217人物。

最后,在printf()函数中,存储在字符类型变量中的字符以%c格式输出。

注意:单引号必须用于分配给字符变量的字符’‘包括字符。

一个字符在内存中存储它的ASCII值,所以我们可以把一个字符的ASCII值赋给一个字符变量,然后输出。测试示例如下。

程序运行结果如下:

正如你所看到的,我们把‘0’字符的ASCII值被赋给字符变量a,就像字符‘0’给字符变量a同样的。因为,人物‘0’的ASCII值为48,在内存中存储为48的值。因此,这就像直接将ASCII值赋给字符变量。

通过这个例子,我们也区分了人物‘1’它不同于值1。1的值是1,但字符’1’的值是其ASCII值,即数字49。

5.2整数类型

自然数中,100、1、99等数值称为“整数”。然后在C语言中,提供相关类型来存储整数值。

c语言提供了关键字short,int,long来表示整数类型,可以定义整数变量。例如,值588是一个整数值,因此它可以存储在一个整型变量中。测试示例如下:

该程序的输出如下:

如你所见,在C语言中,提供了关键字short、int和long来定义整数类型,它们是有符号的数字类型。因此,在变量Y中,可以给负数赋值。

注意,char数据类型虽然是字符型,但是有1字节存储空,1字节存储空可以存储8位二进制数据,可以用整数值表示。

在C语言中,关键字char、short、int、long的数据默认都是有符号的,所以存储的数据可以表示负数。例如,char类型的变量具有一个字节的容量,最高位是符号位,其余七位是数据位。可以表示的最大值是0111 1111,十进制是127。的最小值是1000 0001,小数是-127。

5.3浮点型

自然数中,1.23、6.99等带小数的数据称为浮点数。在C语言中,提供了关键字float和double来指示浮点类型,并且可以定义浮点变量。

下面是一个测试的例子:

运行该程序的结果如下:

正如您所看到的,我们已经定义了浮点类型变量a1和a2,并且可以为它们分配十进制值。然后,变量中的浮点数以%f格式输出。注意:因为printf函数输出的是带精度部分的浮点数,小数部分输出的是6位,所以不足的零是填充的。所以1.23的数据输出是1.230000,小数点有6位。

注意:浮点型不能和unsigned关键字组合成“unsigned浮点数”。是以下测试的示例:

编译测试程序的结果如下:

如你所见,你不能使用unsigned关键字来修饰float和double等浮点类型。

本文来自秦楚殇投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/635942.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 07-16
下一篇 07-16

相关推荐

  • 思维导图是什么意思,思维导图的10种类型分析

    你可能听过两种完全不同的关于思维导图的观点。一个是思维导图是灵丹妙药。如果平时学习不好,一旦学会思维导图,什么问题都可以解决。另一种观点认为思维导图只是一个绘图工具,作用不大。今天分享这篇文章的目的就是让大家正确认识思维导图。什么是思维导图?为什么要用思维

    2023-07-28 10:11:01
    604 0
  • redis支持的数据类型有哪些 redis支持的5种类型

    Redis的五种数据结构如下:对于redis,所有的键都是字符串。1.字符串字符串类型是redis中最基本的数据类型,一个键对应一个值。字符串类型是二进制安全的,这意味着redis的字符串可以包含任何数据。如数字、字符串、jpg图片或序列化对象。使用:get、set、del、incr、decr等。1

    2023-07-26 16:55:01
    285 0
  • 如何将int转为string类型 一览2种类型互换方式

    1,int和string类型相互转换int->;String: std:: to _ string (intval),同样适用于double、float等类型。字符串->Int: atoi (const char *)或stoi(const string*) (stoi增加了范围检查功能,所以不需要像atoi一样使用str.c_str进行转换)2。随机函数的生成Void srand(uns

    2023-07-26 08:48:01
    1056 0
  • easypoi导出word换行 easypoi导出数字类型

    如果遇到poi阅读,比如{name}无法整体识别,可以使用word的域操作。如果你不知道域的用法,你可以这样做。先写在文本文档里,比如{name},再***到word里。不要在word中一个一个地输入,否则poi可能会认不出您是一个整体XWPFDocument对象是apache提供的第三方jar,可以操作wor

    2023-07-25 10:28:01
    338 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信