C语言关键字break,continue、goto、extern的作用及应用举例,并编写代码进行测试
时间: 2024-09-18 16:14:24 浏览: 44
在C语言中,有一些关键字用于控制程序流程,它们分别是`break`,`continue`,`goto`以及`extern`。
1. **break**:它用于跳出当前的循环结构,如for、while、do-while等循环。当你找到了满足条件的情况,可以提前结束循环,避免不必要的执行。例如:
```c
for(int i = 0; i < 10; i++) {
if(i == 5) {
break;
}
printf("%d\n", i);
}
```
这里,如果i等于5,就会跳出循环,不会打印出6到9的数字。
2. **continue**:当在循环体内遇到`continue`时,会跳过当前循环体剩余的部分,直接进入下一轮循环。例如:
```c
for(int i = 0; i < 10; i++) {
if(i % 2 != 0) {
continue;
}
printf("%d\n", i);
}
```
这将只打印偶数。
3. **goto**:这是一种直接转移至标签处执行的控制结构,通常被认为是一种比较难以理解和维护的编程风格,现代C标准并不推荐过度使用。然而,在一些特定情况,如函数间的嵌套流程控制,可能会用到。例如:
```c
loop:
if (some_condition) {
do_something();
} else {
goto loop;
}
```
但这可能导致代码难以理解,因此应谨慎使用。
4. **extern**:这是一个存储类别说明符,用于声明变量在其他文件中(即外部文件)被定义。例如:
```c
// extern.h
extern int global_var;
// main.c
#include "extern.h"
int global_var = 42; // 实际定义
void some_func() {
printf("Global var: %d\n", global_var);
}
```
这里的`extern int global_var;`告诉编译器全局变量`global_var`将在其他地方定义。
阅读全文