- 个人主页: 程序员爱摸鱼
- 版权: 本文由【程序员爱摸鱼】原创、在CSDN首发、需要转载请联系博主
- 如果文章对你有帮助、欢迎关注+点赞+收藏(一键三连)哦
- 想寻找共同成长的小伙伴,可以互粉哦
1. 基础语法
1.1 布尔类型
1.2 数据类型长度
1.3 可移植的类型
1.4 常量
1.5 自定义的常量
1.6 系统定义的常量
布尔类型是一种处理逻辑的类型,其有两个值,分别是真(true)或假(false),它在内存中的长度一般只占用1个字节
#include
#include
int main() {
// 定义一个bool类型变量,同时赋值为true,然后打印变量的值
bool flag = true;
printf("%d\n", flag);
// 修改上一步变量的值为false,然后打印变量的值
flag = false;
printf("%d\n", flag);
return 0;
}
存储单位说明
术语 |
含义 |
bit(比特) |
一个二进制代表一位,一个位只能表示0或1两种状态。数据传输是习惯以“位”(bit)为单位。 |
Byte(字节) |
一个字节为8个二进制,称为8位,计算机中存储的最小单位是字节。数据存储是习惯以“字节”(Byte)为单位。 |
1b |
1bit |
1B |
1Byte = 8bit |
1KB |
1KB = 1024B |
1MB |
1MB = 1024KB |
1GB |
1GB = 1024MB |
1TB |
1TB = 1024GB |
1PB |
1PB = 1024TB |
…… |
…… |
基本数据类型长度
数据类型的长度会受操作系统平台的影响,所以在不同平台下基本数据类型的长度是不一样的。
#include
int main() {
// 通过sizeof打印各种类型的长度(大小)
printf("char length = %d\n", sizeof(char));
printf("short length = %d\n", sizeof(short));
printf("int length = %d\n", sizeof(int));
printf("long length = %d\n", sizeof(long));
printf("float length = %d\n", sizeof(float));
printf("double length = %d\n", sizeof(double));
printf("long double length = %d\n", sizeof(long double));
// 定义int类型变量,sizeof打印变量的大小
int a;
printf("a length = %d\n", sizeof(a));
return 0;
}
ps:在单片机开发中,int在8位的单片机中长度为2个字节,在32位的单片机中长度为4个字节
最开始我们介绍C语言是一门跨平台的编程语言,使用C语言编写的程序可以在不同的系统平台下运行,这里有一些前提,为了更好的兼容不同平台,我们在使用基本上数据类型的时候会采用可移植的类型,这些类型可以确保在不同的平台下稳定的运行。
示例代码:
#include
#include
int main() {
// 8位整型
int8_t a=127;
printf("%d\n", sizeof(a));
// 16位整型
int16_t b = 127;
printf("%d\n", sizeof(b));
// unsigned 无符号,没有符号位,数值为正数
uint8_t c = 255;
uint16_t d = 200;
return 0;
}
与变量不同,常量的值在程序运行时不会改变。
整型常量 |
100,200,-100,0 |
实型常量 |
3.14 , 0.125,-3.123 |
字符型常量 |
'a', 'b', '1' |
字符串常量 |
"a", "ab","12356" |
常量的定义方式有两种:
// 预处理常量
#define PI 3.14
// const常量
const double pi2 = 3.14;
示例代码:
#include
// 预处理常量
#define PI 3.14
int main() {
// const常量
const double pi2 = 3.14;
// 常量不能修改,以下代码是错误的
PI = 3.33;
pi2 = 3.33;
return 0;
}
C语言提供了一些常量库,比如有:float.h、limits.h等,这些常量同样受操作系统平台的影响会在不同的平台下不一样。
float.h:
limits.h:
示例代码:
#include
#include
#include
int main() {
// 打印float类型能够表示的最大值和最小值
printf("%lf\n", FLT_MIN);
printf("%lf\n", FLT_MAX);
// 打印char类型位数以及能够表示的最大值和最小值
printf("%d\n", CHAR_BIT);
printf("%d\n", CHAR_MIN);
printf("%d\n", CHAR_MAX);
// 打印short类型能够表示的最大值和最小值
printf("%d\n", SHRT_MIN);
printf("%d\n", SHRT_MAX);
// 打印int类型能够表示的最大值和最小值
printf("%d\n", INT_MIN);
printf("%d\n", INT_MAX);
// 打印long类型能够表示的最大值和最小值
printf("%ld\n", LONG_MIN);
printf("%ld\n", LONG_MAX);
return 0;
}
想要了解更多吗?没时间解释了,快来点一点!!!
程序员爱摸鱼
————————————————
版权声明:本文为CSDN博主「程序员爱摸鱼」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:程 序 员 爱 摸 鱼