C语言中的32个关键字你知道多少个呢?根据关键字的作用分为四类:数据类型关键字、控制语句关键字、存储类型关键字和其它关键字。
这些修饰符用于改变基本数据类型的存储大小和范围。
1. short:用于声明短整数类型的变量,通常比int短。
2. long:用于声明长整数类型的变量,通常比int长。
3. signed:用于声明有符号数类型的变量(默认情况下,整数类型是有符号的)。
4. unsigned:用于声明无符号数类型的变量。
这些关键字用于声明复杂类型的变量。
1.5 类型限定符
这些限定符用于改变变量的存储和优化方式。
通过标准库中的头文件,可以引入更多的数据类型关键字,例如 stddef.h 中的 size_t, stdint.h 中的 int32_t 等。这些关键字构成了C语言的数据类型系统,允许程序员根据需要声明和定义各种变量和数据结构。
2.1 条件控制语句
if:用于条件判断。
if (condition) {
// code to be executed if condition is true
}
else:用于与if配合,处理条件为假的情况。
if (condition) {
// code to be executed if condition is true
} else {
// code to be executed if condition is false
}
else if:用于在if和else之间检查其他条件。
if (condition1) {
// code to be executed if condition1 is true
} else if (condition2) {
// code to be executed if condition2 is true
} else {
// code to be executed if both conditions are false
}
2.2 选择控制语句
switch:用于根据变量的值进行多分支选择。
switch (variable) {
case value1:
// code to be executed if variable == value1
break;
case value2:
// code to be executed if variable == value2
break;
// other cases
default:
// code to be executed if variable doesn't match any case}
case:用于定义switch语句中的分支。
default:用于定义switch语句中的默认分支。
2.3 循环控制语句
while:用于条件控制的循环,在每次循环前检查条件。
while (condition) { // code to be executed repeatedly while condition is true
}
do...while:用于条件控制的循环,在每次循环后检查条件,保证循环体至少执行一次。
do {
// code to be executed repeatedly
} while (condition);
for:用于计数控制的循环。
for (initialization; condition; increment) {
// code to be executed repeatedly while condition is true
}
2.4 跳转控制语句
break:用于退出当前的循环或switch语句。
break;
continue:用于跳过当前循环中的剩余代码,直接进入下一次循环。
continue;
return:用于从函数中返回。
return value;
goto:用于无条件跳转到标号为label的语句。
goto label;
// other code
label:
// code to be executed after the jump
2.5 其他控制语句
sizeof:用于获取变量或类型的大小(以字节为单位)。
sizeof(type);
assert:用于在调试时检查条件是否为真,条件为假时终止程序执行(需要包含assert.h头文件)。
assert(condition);
这些关键字帮助程序员控制程序的执行流程,实现条件判断、循环、跳转等功能。
auto:是局部变量的默认存储类。它表示变量具有自动存储持续时间,即变量在进入其作用域时被创建,在退出其作用域时被销毁。通常用于函数内部的局部变量,现代编译器可以省略此关键字。
auto int x = 10; // 等同于 int x = 10;
register:建议编译器将变量存储在CPU寄存器中,而不是在内存中,从而提高访问速度。寄存器变量不能取地址(即不能使用&操作符)。
register int counter = 0;
static:有三种主要用途:1.在函数内部:表示局部变量在函数调用之间保持其值,而不是每次调用时重新创建。
void func() {
static int count = 0; // count在第一次调用时被初始化,后续调用时保持其值
count++;
printf("%d\n", count);
}
2.在函数外部:表示变量在整个程序的生命周期内可见,但仅在定义它的文件内可见(即具有文件作用域)。
static int globalVar = 100; // 仅在定义它的文件内可见
3.在函数声明前:表示函数仅在定义它的文件内可见。
static void helperFunction() {
// 仅在定义它的文件内可见
}
extern:用于声明在其他文件中定义的变量或函数,使得可以在当前文件中引用它们。它表示变量或函数的定义在其他地方(可能是其他文件),但可以在当前文件中使用。
extern int globalVar; // 引用其他文件中定义的变量extern void someFunction(); // 引用其他文件中定义的函数
_Thread_local:用于声明线程局部存储(TLS)变量,每个线程都有独立的实例。可以与static或extern结合使用。
_Thread_local int threadVar = 0; // 每个线程都有独立的threadVar实例
这些存储类型关键字提供了灵活的方式来管理变量的存储、作用域和生命周期,从而优化程序性能和内存使用。
C语言中有34种运算符,涵盖了算术运算、关系运算、逻辑运算、位运算、赋值运算和其他特殊运算。以下是这些运算符的详细分类和用法:
全部0条评论
快来发表一下你的评论吧 !