Data type
C语言提供了丰富的数据类型来描述各种数据。
内置类型 | 字符型 整型 浮点型 布尔类型 |
自定义类型 | 数组 结构体-strcut 枚举-enum 联合体-union |
字符型 | char signed char有符号 unsigned char无符号 |
整型 | short int短整型 int整型 long int长整型 long long int更长的整型 |
浮点型 | float单精度 double双精度 long double |
布尔类型_Bool | 包含的头文件<stdbool.h> 变量的取值true(非0 ,1)或者false(0) |
#include<stdio.h>
#include<stdbool.h>
int main()
{
_Bool flag = true;
if (!flag)//flag为false,不执行if内容
printf("it's yes!\n");
else
printf("err\n");
return 0;//结果为err
}
- sizeof 是一个关键字,也是操作符,用于计算类型长度,单位为字节。
sizeof(类型) 后面的操作数如果不是类型,是表达式,括号可以省略。
sizeof 表达式 sizeof后面的表达式是不真实参与计算的,根据表达式的类型来得出大小。
short s = 2;
int b = 10;
printf("%d\n", sizeof(s = b + 1));
printf("s = %d", s);\\输出为2(短整型)
数据类型长度
- signed和unsigned
C语言用signed(表示一个类型带有正负号,包含负值,打印用%d)和unsigned(只能表示零和正整数,打印用%u)修饰字符型 char 和整型 int。
对于int类型,默认是带有正负号的,即 int 等同于 signed int。声明 unsigned int 变量时,int可以省略。
整数变量声明为unsigned的好处是,同样长度的内存能表示的最大整数值增大了一倍。
e.g.16位的 sigend short int:-32768~32768,unsigned short int:0~65535
- 数据类型的取值范围
头文件 limits.h说明了整型类型的取值范围, float.h说明了浮点型的取值范围。
可以引入头文件.,跳转到文档查看。
variables
变量,经常变化的量,不变的值称为常量。
- data_type(数据类型) name(变量名)
int a;
char ch;
double weight;
- 变量在创建的时候就给一个初始值,叫初始化。
unsigned int height = 100;
double weight = 48.0;
- 变量的分类
全局变量 大括号外部定义的变量,放在内存的栈区,整个工程中都可使用。
局部变量 大括号内部定义的变量,放在内存的静态区,在自己的局部范围内使用。
当全局与局部变量名相同时,局部变量优先。