C语言编程基础与流程控制详解
立即解锁
发布时间: 2025-08-25 02:17:36 阅读量: 2 订阅数: 4 

### C语言编程基础与流程控制详解
#### 1. 源代码空格规范
在C语言的示例程序中,我们常常能看到制表符、空格和空行,这些在C语言里被统称为空白字符。除了少数特殊情况,C编译器通常会忽略这些空白字符。例如下面两段代码,在编译器看来是等价的:
```c
#include <stdio.h>
int main (int argc,
const char * argv[])
{
int myInt;myInt
=
5
;
printf("myInt=",myInt);}
```
```c
#include <stdio.h>
int main (int argc, const char * argv[]) {
int myInt;
myInt = 5;
printf( "myInt =", myInt );
}
```
编译器并不在意你一行写多少条语句,或者语句和分号之间有多少换行符。但有一点需要注意,编译器不允许在变量名或函数名等单词中间插入空白字符。比如 `my Int = 5;` 就无法编译,因为编译器会将其视为两个不同的项,分别是 `my` 和 `Int`。
同时,空白字符过少也可能导致编译问题。例如 `intmyInt;` 就无法通过编译,因为编译器需要至少一个空白字符来区分类型和变量。而 `myInt=5;` 则可以正常编译,因为变量名不能包含 `=` 字符,编译器能够轻松识别变量和运算符的边界。
为了让代码更具可读性,我们可以遵循以下空白字符使用建议:
- 在变量声明和函数的其他代码之间添加空行,也可以用空行来分组相关的代码行。
- 在语句中适当添加单个空格。例如 `printf( "myInt =", myInt );` 比 `printf("myInt=",myInt);` 更易读。
- 当代码逻辑复杂时,使用括号来明确运算顺序。例如 `myInt = var1 + (2*var2) + 4;` 比 `myInt=var1+2*var2+4;` 更清晰。
- 变量名以小写字母开头,后续每个单词的首字母大写,如 `myVar`、`areWeDone` 和 `employeeName`。
- 函数名以大写字母开头,后续每个单词的首字母也大写,如 `DoSomeWork()`、`HoldThese()` 和 `DealTheCards()`。
这些建议仅供参考,你可以根据自己和团队的习惯制定合适的标准,关键是要让代码尽可能易于阅读。
#### 2. 代码注释
在编写计算机程序时,清晰全面的文档是至关重要的。除了为用户提供使用说明文档外,代码中的注释也是一种重要的文档形式。好的注释就像一个故事,能够引导读者理解代码的工作原理、独特之处以及修改时的注意事项。
为代码添加注释的方法如下:
- 所有C编译器都将 `/*` 视为注释的开始,直到遇到 `*/` 才结束注释。
- 所有符合C99标准的编译器支持使用 `//` 来标记单行注释,从 `//` 开始到行末的所有字符都会被忽略。
以下是一个带有注释的代码示例:
```c
int main (int argc, const char * argv[]) {
int numPieces; // Number of pieces of pie left
numPieces = 8; // We started with 8 pieces
numPieces-- ; // Peter had a piece
numPieces-- ; // Quagmire had a piece
numPieces -= 2; // Cleveland had two pieces!!
numPieces -= 4; // Joe had the rest!!!
printf( "Slices left = %d", numPieces );
/* How about
some cake
instead? */
return 0;
}
```
在这个示例中,大部分注释都在同一行,但最后一个注释跨了三行,这样的代码依然可以正常编译。
如果需要注释掉一大块代码,你可以在代码块前后分别添加 `/*` 和 `*/`,但要确保代码块中不包含 `*/` 字符,否则可能需要进行一些小的编辑。
#### 3. 花括号使用风格
在C语言中,花括号的放置有两种常见风格。第一种风格是将左花括号放在代码行的末尾:
```c
int main (int argc, const char * argv[]) {
printf( "Hello, world!" );
return 0;
}
```
第二种风格是将左花括号单独放在一行:
```c
int main (int argc, const char * argv[])
{
printf( "Hello, world!" );
return 0;
}
```
有人认为第二种风格能让代码看起来更整洁,更容易找到匹配的右花括号;但它的缺点是会增加代码行数,导致屏幕上显示的代码量减少。你可以根据自己的喜好进行尝试,找到最适合自己的风格。
#### 4. 程序流程控制
在之前编写的程序中,语句通常是按照顺序依次执行的。而程序流程控制则是指控制程序语句执行顺序的能力。C语言提供了一些关键字来实现这一功能,其中 `if` 关键字就是一个典型代表。
##### 4.1 `if` 语句
`if` 关键字可以让你在程序中进行选择。在英语中,我们可能会说 “If it's raining outside I'll bring my umbrella; otherwise I won't.” ,在C语言中,`if` 语句也有类似的功能。例如:
```c
#include <stdio.h>
int main (int argc, const char * argv[]) {
int myInt;
myInt = 5;
if ( myInt == 0 )
printf( "myInt is equal to zero." );
els
```
0
0
复制全文
相关推荐










