C语言复习:数据类型和变量

*本文为作者自留,用以复习

C语言提供了以下数据类型:

注:在使用char,int,float,double类型时,不加unsigned默认为有符号

1.布尔类型:专门用来描述真和假的类型

C语言在最初以整数0表示假,非零值表示真,C99时引入了布尔类型表示真假。

此类型的使用需要包含头文件<stdbool.h>,取值为ture或false

_Bool flag = true;
if (flag)
    printf("i like C\n");

2.sizeof操作符

sizeof()括号内可以是类型或表达式,为表达式或变量名时时,可以省略括号。

sizeof中的表达式不会真正的计算,只会确定表达式的类型。

sizeof运算符的返回值中,C语言只规定是无符号整数,并没有规定具体的类型,因为不同系统返回值的类型可能不同,故C语言创造了一个类型别名size_t,用来统一表示sizeof的返回值类型。

3.数据类型长度

 {
 printf("%zd\n", sizeof(char));//1
 printf("%zd\n", sizeof(_Bool));//1
 printf("%zd\n", sizeof(short));//2
 printf("%zd\n", sizeof(int));//4
 printf("%zd\n", sizeof(long));//4
 printf("%zd\n", sizeof(long long));//8
 printf("%zd\n", sizeof(float));//4
 printf("%zd\n", sizeof(double));//8
 printf("%zd\n", sizeof(long double));//8
 return 0;
 }

 可以发现,long [int] 和 int 的长度相同,这是因为C语言标准规定了long的长度大于或等于4,只要满足这个条件即可。

4.signed和unsigned

这两个关键字用来修饰字符型和整型。

signed关键字表示一个类型带有正负号,包含负值。

unsigned关键字表示该类型不带有正负号,只能表示零和正整数。

将整数变量声明为unsigned后,同样长度的内存能够表示的最大整数值增大了一倍,16位的signed short int的取值范围是:-32768~32767,最大为32767;而unsigned short int的取值的范围为:0~65535,最大值增大到了65535。

数据类型的取值范围

limits.h和float.h文件可以查看整型和浮点型类型的取值范围。

也有以下常量表示极限值:

4.全局变量和局部变量

全局变量定义在大括号外部,当局部变量和全局变量同名时,局部变量优先使用。

这两个变量在内存中的存储如下:

  • 22
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值