存储类是C语言中用于控制变量的生命周期、作用域和存储位置的关键字。C语言中有四种存储类:自动存储类、静态存储类、寄存器存储类和外部存储类。下面分别介绍这四种存储类的特点和用法。
示例:
void func() {
auto int num; // 自动存储类的变量
num = 10;
printf("%d\n", num);
}
示例:
void func() {
static int count = 0; // 静态存储类的变量
count++;
printf("%d\n", count);
}
示例:
void func() {
register int i; // 寄存器存储类的变量
for (i = 0; i < 10; i++) {
printf("%d\n", i);
}
}
示例:
// file1.c
extern int count; // 外部存储类的变量声明
// file2.c
int count = 0; // 外部存储类的变量定义
运算符是C语言中用于进行各种运算操作的符号。C语言提供了多种运算符,包括算术运算符、关系运算符、逻辑运算符、位运算符等。下面介绍几种常用的运算符及其用法。
示例:
int a = 10, b = 5;
int sum = a + b; // 加法
int difference = a - b; // 减法
int product = a * b; // 乘法
int quotient = a / b; // 除法
int remainder = a % b; // 取模
示例:
int a = 10, b = 5;
int result1 = a > b; // 大于
int result2 = a < b; // 小于
int result3 = a >= b; // 大于等于
int result4 = a <= b; // 小于等于
int result5 = a == b; // 等于
int result6 = a != b; // 不等于
示例:
int a = 10, b = 5, c = 0;
int result1 = (a > b) && (a > c); // 逻辑与
int result2 = (a > b) || (a > c); // 逻辑或
int result3 = !(a > b); // 逻辑非
示例:
int a = 10, b = 5;
int result1 = a & b; // 按位与
int result2 = a | b; // 按位或
int result3 = a ^ b; // 按位异或
int result4 = ~a; // 按位取反
判断是C语言中用于根据条件执行不同代码块的结构。C语言提供了if语句和switch语句来实现判断功能。
示例:
int num = 10;
if (num > 0) {
printf("num is positive\n");
} else if (num < 0) {
printf("num is negative\n");
} else {
printf("num is zero\n");
}
示例:
int num = 2;
switch (num) {
case 1:
printf("num is 1\n");
break;
case 2:
printf("num is 2\n");
break;
default:
printf("num is not 1 or 2\n");
break;
}
循环是C语言中用于重复执行一段代码的结构。C语言提供了for循环、while循环和do-while循环来实现不同类型的循环。
示例:
for (int i = 0; i < 10; i++) {
printf("%d\n", i);
}
int i = 0;
while (i < 10) {
printf("%d\n", i);
i++;
}
示例:
int i = 0;
do {
printf("%d\n", i);
i++;
} while (i < 10);
跳转是C语言中用于改变程序执行流程的结构。C语言提供了break语句、continue语句和return语句来实现不同类型的跳转。
示例:
for (int i = 0; i < 10; i++) {
if (i == 5) {
break;
}
printf("%d\n", i);
}
示例:
for (int i = 0; i < 10; i++) {
if (i % 2 == 0) {
continue;
}
printf("%d\n", i);
}
示例:
int add(int a, int b) {
return a + b;
}