提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
一、C语言关键字
auto | ertern | short | while |
break | float | signed | _Alignas |
case | for | sizeof | _Alignof |
cahr | goto | static | _Atomic |
const | if | struct | _Bool |
continue | inline | switch | _Complex |
default | int | typedef | _Generic |
do | long | union | _Imaginary |
double | register | unsigned | _Noreturn |
else | restrict | void | _Static_assert |
enum | return | volatile | _Thread_local |
ps:其中粗体为C90标准新增关键字,斜体为C99标准新增的关键字
最初K&R给出的关键字 | C90标准添加的关键字 | C99标准添加的关键字 |
int | signed | _Bool |
long | void | _Complex |
short | ||
unsigned | ||
char | ||
float | ||
double |
代码编写过程中,经常要为变量命名,即定义标识符,注意标识符不能与关键字重名哦
二、转义序列
转义序列 | 含义 | 转义序列 | 含义 |
\a | 警报(ANSI C) | \b | 退格 |
\f | 换页 | \n | 换行 |
\r | 回车 | \t | 水平制表符 |
\v | 垂直制表符 | \\ | 反斜杠(\) |
\' | 单引号 | \" | 双引号 |
\? | 问号 | \0oo | 八进制值 |
\xhh | 十六进制值 |
转换说明 | 输出 | 转换说明 | 输出 |
%a(%A) | 浮点数、十六进制数和p计数法(C99/C11) | %c | 单个字符 |
%d(%i) | 有符号十进制整数 | %f | 浮点数,十进制计数法 |
%e(%E) | 浮点数,e计数法 | %o | 无符号八进制整数 |
%p | 指针 | %s | 字符串 |
%x(%X) | 无符号十六进制整数 | %u | 无符号十进制整数 |
三、printf()的转换说明修饰符
修饰符 | 含义 |
标记 | 标记有五种(-、+、空格、#、0),可以不使用或使用多个标记 如:“%-10d” |
数字 | 表示输入的最小字段宽度,如果该字段不能容纳待打印的数字或字符串,系统会使用更宽的字段 例:“%4d” |
.+数字 | 表示精度 对于%e、%E、%f,表示小数点右边数字的位数 对于%g、%G转换,表示有效数字最大位数 对于%s转换,表示待打印数字的最大数量 对于整型转换,表示待打印数字的最小位数 例:“%5.2d”打印一个浮点数,字段宽度为5字符,其中小数点后有两位数字 |
h | 和整型转换说明一起使用,表示short int或unsigned short int类型的值 |
hh | 和整型转换说明一起使用,表示signed char或unsigned char类型的值 |
j | 和整型转换说明一起使用,表示intmax_t或uintmax_t类型的值。这些类型定义在stdint.h中 |
l | 和整型转换说明一起使用,表示long int或unsigned long int类型的值 |
ll | 和整型转换说明一起使用,表示long long int或unsigned long long int类型的值 |
L | 和浮点转换说明一起使用,表示long double类型的值 |
t | 和整型转换一起使用,表示ptrdiff_t类型的值。ptrdiff_t是两个指针差值的类型(C99) |
z | 和整型转换一起使用,表示size_t类型的值。size_t是sizeof返回的类型(C99) |
四、scanf()的使用
转换说明 | 含义 |
%c | 把输入解释成字符 |
%d | 把输入转换成有符号十进制整数 |
%e、%f、%g、%a | 把输入解释成浮点数 |
%E、%F、%G、%A | 把输入解释成浮点数 |
%i | 把输入解释成有符号十进制整数 |
%o | 把输入解释成有符号八进制整数 |
%p | 把输入解释成指针 |
%s | 把输入解释成字符串。从第一个非空白字符开始,到下一个空白字符之前都是输入 |
%u | 把输入解释成无符号十进制整数 |
%x、%X | 把输入解释成有符号十六进制整数 |
转换说明 | 含义 |
* | 抑制赋值(跳过相应输入项) |
数字 | 最大字段宽度,输入达到最大字段宽度处,或第一次遇到空白字符时停止 |
hh | 把整数作为signed char或unsigned char类型读取 |
ll | 把整数作为long long或unsigned long long类型读取 |
h、l、L | “%hd”和“%hi”表明把对应的值储存为short int类型 “%ho”、“%hx”和“%hu”表明把对应的值存为unsigned short int类型 “%ld”和“li”表明把对应的值存为long类型 “%lo”、“%lx”和“%lu”表明把对应的值储存为unsugned long类型 “%le”、“%lf”和“%lg”表明把对应的值储存为double类型 |
j | 在转换类型说明后面,表明使用intmax_t或uintmax_t类型 |
z | 在转换类型说明后面,表明使用sizeof的返回类型 |
t | 在转换类型说明后面,表明使用表示两个指针差值的类型 |
五、运算符及优先级
运算符 | 名称 | 功能 | 说明 |
+ | 正号 | 取原值 | 单目运算 |
- | 负号 | 取负值 | 单目运算 |
++ | 自增1 | 变量值加1 | 单目运算 |
-- | 自减1 | 变量值减1 | 单目运算 |
+ | 加法 | 两个数相加 | 双目运算 |
- | 减法 | 两个数相减 | 双目运算 |
* | 乘法 | 两个数相乘 | 双目运算 |
/ | 除法 | 两个数相除 | 双目运算 |
% | 求余 | 求整除后的余数 | 双目运算 |
运算符 | 名称 | 示例 | 结果 |
< | 小于 | 1<2 | 1 |
<= | 小于或等于 | 5<=3 | 0 |
> | 大于 | ‘A’>‘a’ | 0 |
>= | 大于或等于 | 'b'>='a' | 1 |
== | 等于 | 1==1 | 1 |
!= | 不等于 | 1!=2 | 1 |
运算符 | 名称 | 示例 | 结果 | 说明 |
! | 逻辑非 | !5 | 0 | 单目运算 |
&& | 逻辑与 | 0&&1 | 0 | 双目运算 |
|| | 逻辑或 | 0||1 | 1 | 双目运算 |
(1)逻辑与是单目运算符,功能为逻辑取反,操作数为真,则结果为假。
(2)逻辑与是双目运算符,仅当参与运算的两个操作数都为真时,结果才为真。
(3)逻辑或是双目运算符,参与运算的两个操作数只要一个为真,则结果为真。
复合赋值运算符 | 名称 | 表达式 | 等价的赋值表达式 |
+= | 加赋值 | a+=b | a=a+b |
-= | 减赋值 | a-=b | a=a-b |
*= | 乘赋值 | a*=b | a=a+b |
/= | 除赋值 | a/=b | a=a/b |
%= | 求余赋值 | a%=b | a=a%b |
&= | 按位与赋值 | a&=b | a=a&b |
|= | 按位或赋值 | a|=b | a=a|b |
^= | 按位异或赋值 | a^=b | a=a^b |
<<= | 左移位赋值 | a<<=b | a=a<<b |
>>= | 右移位赋值 | a>>=b | a=a>>b |
运算符 | 名称 | 说明 |
~ | 按位取反 | 单目运算符 |
& | 按位与 | 双目运算符 |
| | 按位或 | 双目运算符 |
^ | 按位异或 | 双目运算符 |
<< | 按位左移 | 双目运算符 |
>> | 按位右移 | 双目运算符 |
优先级 | 运算符 | 含义 | 类型 | 结合方向 |
1 | () [] _> . | 圆括号 下标运算符 成员运算符 结构体成员运算符 | 特殊运算符 | 自左到右 |
2 | + - !~ (类型) ++ -- * & sizeof | 正号 负号 逻辑非 按位取反 强制类型转换 自增 自减 取内容 取地址 求字节数 | 单目运算符 | 自右到左 |
3 | * / % | 乘法 除法 取余数 | 算术运算符 | 自左到右 |
4 | + - | 加法 减法 | 算术运算符 | 自左到右 |
5 | << >> | 按位左移 按位右移 | 位运算符 | 自左到右 |
6 | > >= < <= | 大于 大于或等于 小于 小于或等于 | 关系运算符 | 自左到右 |
7 | == != | 等于 不等于 | 关系运算符 | 自左到右 |
8 | & | 按位与 | 位运算符 | 自左到右 |
9 | ^ | 按位异或 | 位运算符 | 自左到右 |
10 | | | 按位或 | 位运算符 | 自左到右 |
11 | && | 逻辑与 | 逻辑运算 | 自左到右 |
12 | || | 逻辑或 | 逻辑运算 | 自左到右 |
13 | ?: | 条件运算 | 三目运算符 | 自右到左 |
14 | = += -= *= /= %= &= ^= |= <<= >>= | 赋值运算 | 双目运算符 | 自右到左 |
15 | , | 逗号运算 | 自左到右 |
总结
了解常用C语言的基本知识是C语言程序设计的基础,希望以上总结的基础知识能够帮到新入门的小伙伴们。