C程序设计基础-数据类型

整型数据

  1. 基本整型(int型):如果用Visual C++,编译系统给int型数据分配4个字节(32位),其能容纳的数值范围为 − 2 31 ∼ ( 2 31 − 1 ) -2^{31}\sim(2^{31}-1) 231(2311)
  2. 短整型(short int型):如果用Visual C++,编译系统给short int型数据分配2个字节(16位),其能容纳的数值范围为 − 2 15 ∼ ( 2 15 − 1 ) -2^{15}\sim(2^{15}-1) 215(2151)
  3. 长整型(long int型):如果用Visual C++,编译系统给long int型数据分配4个字节(32位),其能容纳的数值范围为 − 2 31 ∼ ( 2 31 − 1 ) -2^{31}\sim(2^{31}-1) 231(2311)

注意点:

  • 上述三种类型均为有符号数,当值表示为正数时,第一位作为符号位为0。
  • C标准没有具体规定各种类型数据所占用存储单元的长度,由各个编译系统自行决定。C标准只要求long型数据长度不短于int型,short型数据不长于int型。即 s i z e o f ( s h o r t ) ≤ s i z e o f ( i n t ) ≤ s i z e o f ( l o n g ) sizeof(short)\le sizeof(int)\le sizeof(long) sizeof(short)sizeof(int)sizeof(long)
  1. 整型变量的符号属性(在Visual C++环境下)

    类型字节数取值范围
    int4 − 2 31 ∼ ( 2 31 − 1 ) -2^{31}\sim(2^{31}-1) 231(2311)
    unsigned int4 0 ∼ ( 2 32 − 1 ) 0\sim(2^{32}-1) 0(2321)
    short2 − 2 15 ∼ ( 2 15 − 1 ) -2^{15}\sim(2^{15}-1) 215(2151)
    unsigned short2 0 ∼ ( 2 16 − 1 ) 0\sim(2^{16}-1) 0(2161)
    long4 − 2 31 ∼ ( 2 31 − 1 ) -2^{31}\sim(2^{31}-1) 231(2311)
    unsigned long4 0 ∼ ( 2 32 − 1 ) 0\sim(2^{32}-1) 0(2321)

字符型数据

  1. 字符与字符代码并不都能被程序识别,只能使用系统字符集中的字符,目前多采用ASCII字符集。

  2. 字符变量是使用类型符char定义的。如定义char a='?''?'的ASCII代码为63,系统就把整数63赋给变量aa是字符变量,实质上是一个字节的整型变量,在输出的时候可以选择十进制整数形式输出或字符形式输出。

  3. 字符型数据的存储空间和值的范围

    类型字节数取值范围
    signed char1 − 2 7 ∼ ( 2 7 − 1 ) -2^{7}\sim(2^{7}-1) 27(271)
    unsigned char1 0 ∼ ( 2 8 − 1 ) 0\sim(2^{8}-1) 0(281)

浮点型数据

  1. 浮点型数据是用来表示具有小数点的实数,其类型包括单精度浮点型(float)、双精度浮点型(double)、长双精度浮点型(long double)。

  2. 浮点型数据的存储空间和值的范围(在Visual C++环境下)

    类型字节数有效数字取值范围
    float46 0 、 1.2 ∗ 1 0 − 38 ∼ 3.4 ∗ 1 0 38 0、1.2*10^{-38}\sim 3.4*10^{38} 01.210383.41038
    double815 0 、 2.3 ∗ 1 0 − 308 ∼ 1.7 ∗ 1 0 308 0、2.3*10^{-308}\sim 1.7*10^{308} 02.3103081.710308
    long double815 0 、 2.3 ∗ 1 0 − 308 ∼ 1.7 ∗ 1 0 308 0、2.3*10^{-308}\sim 1.7*10^{308} 02.3103081.710308

不同数据之间的混合运算

在程序中经常需要对不同类型的数据进行运算,如果一个运算符两侧的数据类型不同,则先自动进行类型转换,然后进行运算。其规则如下:

  1. +、-、*、/运算的两个数中有一个数为floatdouble型,其结果是double型。
  2. 如果int型与floatdouble型数据进行运算,先把int型与float型都转换为double型,其结果是double型。
  3. char型数据与整型数据运算,就是把字符的ASCII码与整型数据进行运算。

参考资料

  1. C程序设计(第五版),谭浩强著。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值