第2讲:C语言数据类型和变量

张开发
2026/6/7 17:12:38 15 分钟阅读
第2讲:C语言数据类型和变量
目录1.数据类型介绍2.signed和unsigned3.数据类型的取值范围1.数据类型介绍C语言提供了丰富的数据类型来描述生活中的各种数据。使用整数类型来描述整数使用字符类型来描述字符使用浮点型类型来描述小数。所谓“类型”就是相似的数据所拥有的共同特征编译器只有知道了数据的类型才知道怎么操作数据。C语言提供的各种数据类型如下所示本章节主要探讨内置数据类型。1.1字符型字符的英文单词是character,在C语言中使用char表示字符类型。1.char //character2.[signed] char //有符号的3.[unsigned] char //无符号的1.2整型整数的英文单词是integer,在C语言中使用int表示整型类型。1.//短整型short [int][signed] short [int]unsigned short [int]2.//整型int[signed] intunsigned int3.//长整型long [int][signed] long [int]unsigned long [int]4.//更长的整型//C99中引入long long [int][signed] long long [int]unsigned long long [int]1.3浮点类型1.float //单精度浮点型 4字节2.double //双精度浮点型 8字节3.long double //长双精度浮点型 8字节1.4布尔类型C语言原来并没有为布尔值单独设置一个类型而是使用整数0表示假非0值表示值。在C99中也引入了布尔类型是专门表示真假的。1._Bool布尔类型的使用得包含头文件stdbool.h布尔类型变量的取值是true或者false。代码演示1.5各种数据类型长度每一种数据类型都有自己的长度使用不同的数据类型能够创建出不同长度的变量变量长度的不同存储的数据范围就有所差异。1.5.1 sizeof操作符sizeof是一个关键字也是操作符专门是用来计算sizeof的操作符数的类型长度的单位是字节。sizeof操作符的操作数可以是类型也可是变量或者表达式。1. sizeof(类型)2.sizeof(表达式)sizeof 的操作数如果不是类型是表达式的时候可以省略掉后边的括号的。sizeof 后边的表达式是不真实参与运算的根据表达式的类型来得出大小。sizeof 的计算结果是size_t 类型的。1.5.2数据类型长度参考资料数据类型⻓度和取值范围-官⽅介绍2.signed和unsignedC语言使用signed和unsigned关键字修饰字符型和整型类型的。signed关键字表示一个类型带有正负号包含负值unsigned关键字表示该类型不带有正负号只能表示0和正整数。对于int类型默认是带有正负号的也就是说int等同于signed int。由于这是默认情况关键字signed一般都省略不写。int类型也可以不带正负号只表示非负整数这时就必须使用关键字unsigned声明变量。整数变量声明为unsigned的好处是同样长度的内存能够表示的最大整数值增大了一倍。比如16位的signed short int的取值范围是-32768~32767最大是32767而unsigned short int的取值范围是0~65535最大值增大到了65535。32位的signed int的取值范围可以参看limits.h中给出的定义。字符类型char也可以设置signed和unsigned。3.数据类型的取值范围上述的数据类型很多尤其整型类型就有short、int、long、longlong四种为什么呢其实每一种数据类型有自己的取值范围也就是存储的数值最大值和最小值的区间有了丰富的类型我们就可以在适当的场景下去选择适合的类型。如果要查看当前系统上不同数据类型的极限值limits.h文件中说明了整型类型的取值范围。float.h这个头文件中说明浮点型类型的取值范围。为了代码的可移植性需要知道某种数据类型的极限值时应该尽量使用这些常量。SCHAR_MINSCHAR_MAXsigned char 的最⼩值和最⼤值。SHRT_MINSHRT_MAXshort 的最⼩值和最⼤值。INT_MININT_MAXint 的最⼩值和最⼤值。LONG_MINLONG_MAXlong 的最⼩值和最⼤值。LLONG_MINLLONG_MAXlong long 的最⼩值和最⼤值。UCHAR_MAXunsigned char 的最⼤值。USHRT_MAXunsigned short 的最⼤值。UINT_MAXunsigned int 的最⼤值。ULONG_MAXunsigned long 的最⼤值。ULLONG_MAXunsigned long long 的最⼤值。

更多文章