目录
一、数据类型
在C语言中,数据类型用于声明变量和函数,它们决定了变量存储占用的空间大小以及如何解释存储的位模式。C语言的数据类型主要分为以下几类:
(1)基本数据类型
- 整型:包括 `int`, `short int`, `long int`, `long long int` 等,用于存储整数。
- 字符型:`char`,用于存储单个字符。
- 浮点型:包括 `float`, `double`, `long double`,用于存储浮点数。
- 布尔型(C99标准引入):`_Bool`,用于存储逻辑值 `true` 或 `false`。
- 无符号类型:包括 `unsigned int`, `unsigned char`, `unsigned short int`, `unsigned long int`, `unsigned long long int` 等,用于存储非负整数。
(2)派生数据类型:数组类型、指针类型、结构体类型
(3)其他类型:枚举类型、void 类型
**简单代码常用数据类型:
PS:获得特定类型在特定平台上的确切大小,可以使用 `sizeof` 运算符。例:
#include <stdio.h>
int main()
{
printf("%d", sizeof(int));
return 0;
}
打印结果单位是字节
**相关单位
- 比特(bit):信息的最小单位,表示二进制数的一位。
- 字节(Byte):通常由8个比特组成,是计算机中存储数据的基本单位。
- (十进制单位)
- 千字节(KB):1 KB = 10³ B = 1000 B
- 兆字节(MB):1 MB = 10⁶ B = 1000 KB
- 吉字节(GB):1 GB = 10⁹ B = 1000 MB
- 太字节(TB):1 TB = 10¹² B = 1000 GB
- 拍字节(PB):1 PB = 10¹⁵ B = 1000 TB
- 艾字节(EB):1 EB = 10¹⁸ B = 1000 PB
二、变量与常量
(1)变量:可赋值的字符
----分类:全局变量、局部变量(区分方法为是否位于{ }内,在{ }内的是局部变量)
----性质
--生命周期
--作用域
(2)常量
---字面常量,如Π=3.14,(常数)10、(字符)a、(字符串)abcd....
---常变量const
int num=5; //此时num仍为变量
const int num=5; //此时num为常量
---定义常量 define
#define MAX 1000 //此时MAX的值恒为1000
---枚举常量 enum
enum Fruit
{
apple, //此处可赋初值,如表达为:apple=5;否则自动赋值为0)
banana,
pear
}
//以上枚举常量自动从0开始赋值,分别printf后为0,1,2
三、字符串 —— 存入数据组及长度测量
1、表示:如,字符串 “abc”, 单字符 {‘a’,’b’,'c'}
2、存入数据组arr[ ]
3、结束标志“\0”(数据组内存在其它未知数据,需要由结束标志结束,字符串系统自带\0,单字符需加入'\0'才能结束)
4、求字符串长度--strlen
5、使用“strlen"时需引用头文件,#include <string.h>
#include <stdio.h>
#include <string.h>
int main()
{
char arr1[]="hot";
char arr2[]={'h','o','t','\0'}; //若不加入'\0',字符长度为随机值
printf(“%d\n",strlen(arr1));
printf("%d\n",strlen(arr2));
return 0;
}
四、转义字符 —— 常见类型及ASCII表
**转义字符用于表示某些无法直接在代码中打印或具有特殊意义的字符。转义字符以反斜杠 \
开始,后跟一个或多个特定的字符,即可打印”\"后面的字符。
示例
printf("%c","\"") //打印结果为”
----\ddd使用方法
printf ("%c","\105") //105为八进制数字,打印结果其转换为十进制数值对应的数据
以上的八进制105转换为十进制对应69,计算方法:1×8² + 0×8¹ + 5×8⁰,根据ASCII表,69对应字符为5,所以打印结果为5.
ASCII表的扩展: