c语言数据类型(自学笔记)

C语言提供了很多的数据类型来表示现实生活中的数据,例如整型表示整数,浮点数表示小数,字符类型描述字符等

    数据类型可分为:内置(本身自带)和自定义

字符

字符:char、[signed]char (有符号)、unsigned char (无符号)

整型

整型:短整型:short [int]、[signed] short [int] (有符号)、unsigned short [int] (无符号)

      整型:int、[signed] int(有符号)、unsigned int (无符号)

      长整型:long [int]、[signed] long [int] (有符号)、unsigned long [int] (无符号)

      更长的整型:long long [int]、[signed] long long [int] (有符号) 、unsigned long long [int] (无符号)

浮点型

浮点型:小数,小数点可以浮动 例如:3.14=31.4*0.1=0.314*10

       单精度浮点型:float

       双精度浮点型:double

       精度更高的浮点型:long double

补充:float x=98.51f 因为float是单精度浮点,而且98.51精度更高一些,需要双精度,故编译器会发出警告,在后面加f可以让98.51强制成为单精度

布尔型

布尔型:专门用来表示真假,取值:false是假,true是真(0是假,非0是真)

    布尔型关键字:_Bool

注意:使用布尔型要添加头文件:<stdbool.h>,并且必须在c语言的环境下,也就是.c的后缀,不能用c++的后缀.cpp,然后被定义为布尔型的话,只能选择false或true这两个值进行初始化或赋值

案例

#include<stdio.h>
#include<stdbool.h>
int main()
{
    _Bool x = false;
    if (x==false)
       printf("yes");
    else
    {
       printf("no");
    }
    return 0;
}
  1. #include<stdbool.h>:使用bool需要添加的头文件
  2. _Bool x = false将x定义为布尔型,并且初始化为false
  3. if (x==false):用if语句判断x==false这个条件,==表示是否相等,那么这整行代码就是:判断x是否等于false,如果是就执行下面二级代码
  4. printf("yes"):如果上面条件判断为是,那么就打印yes
  5. else      printf("no"):如果不是,就打印no,这里可以不用添加{ }

Signedunsigned

Signed和unsigned:c语言中使用它们俩来修饰字符型和整型的

    Signed:表示有符号数,有正有负,直接定义int时,默认为有符号的整型

    Unsigned:表示无符号数,只有零和正整数

注意:无符号数不能初始化或赋值为负数,如果为负数编译器可能会发出警告,如果没有警告,可能编译器关闭了该警告

案例:

int main()
{
    signed int x = 30;
    signed int y = -30;
    unsigned a = 30;
    return 0;
}
  1. signed int x = 30:定义一个有符号整型x,初始化为30
  2. signed int y = -30:定义一个有符号整型y,初始化为-30
  3. unsigned a = 30;:定义一个无符号整型a,初始化为30

变量声明为unsigned的好处:同样长度的内存能够表示的最大整数,增大了一倍,例如:16位的signed short int 的取值范围是:-32768~32767,最大锁骨32767;而unsigned short int 的取值范围为:0~65535,最大值增到了65535 32位的signed int的取值范围可以参看limits.h中给出的定义

注意:是在电脑中搜所limits.h这个文件,并且拖到vs2022中即可查看

补充:了解数据类型取值范围,然后选择合适的数据类型进行编程很有必要,可以在头文件中查看各类型的大小,整型是limits.h;浮点是float.h,打开方式如上注意

今天就到这里 如有错误请指出

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值