C语言入门:从基础语法到你的第一个“Hello World”
C语言入门:从基础语法到你的第一个“Hello World”
C语言以其高效和强大而闻名,是许多编程语言的基础。理解其基本语法是迈向精通的第一步。本篇博客将带你快速了解C语言的核心语法概念,包括语句、表达式、代码块、空格、注释,并详细介绍如何使printf()函数进行输出。
一、语句:程序的基石
C语言程序由一条条语句构成,每个语句都是一条执行指令。语句必须以分号;结尾。
1 | |
- 多语句一行:多个语句可以写在同一行,但通常为了可读性会分行书写。
C 1
int x; x = 1; // 两个语句在一行 - 单语句多行:一个语句也可以跨越多行,编译器会忽略换行符,直到遇到分号才认为语句结束。
C 1
2
3
4
5int x;
x
=
1
; // 这是一个完整的语句 - 空语句:单独的一个分号
;也是一个有效的语句,称为“空语句”,它不执行任何操作。
二、表达式 vs. 语句
表达式是一个用于计算的公式,它总会产生一个值。例如 1 + 2 就是一个表达式,其值为 3。
当表达式后面加上分号,它就变成了一个表达式语句。但并非所有有意义的表达式作为语句都有意义。
1 | |
主要区别:
- 包含关系:语句可以包含表达式,但表达式本身不构成语句(除非加分号)。
- 返回值:表达式始终有返回值;语句不一定需要,它的核心目的是执行动作(如变量声明)。
三、语句块:将代码打包
使用大括号 {} 可以将多条语句组合成一个语句块(或称为复合语句)。在语法上,整个语句块被视为一个单一的单元。
1 | |
语句块在控制流语句(如 if、for)中至关重要,用于定义执行范围。
四、空格与缩进:为了可读性
空格(包括空格、制表符、换行符)主要用于帮助编译器区分语法单位。只要编译器能区分,空格就不是必须的,但它对人类阅读代码至关重要。
- 可选空格:
int x=1;和int x = 1;是等价的。 - 多个空格等同单个:
int x = 1;中的多个空格与单个空格效果相同。 - 缩进:缩进(通常是4个或2个空格)不是语法要求,但能清晰展示代码结构层次。
C 1
2
3
4// 缩进四个空格
if (x > 0) {
printf("positive\n"); // 属于if的代码块
}
五、注释:代码的笔记
注释用于解释代码,编译器会完全忽略它们。C语言有两种注释方式:
-
多行注释:位于
/*和*/之间,可以跨行。C 1
2
3/* 这是一个
多行注释 */
int open(char* s /* 文件名 */, int mode); // 行内注释警告:务必成对使用,否则
/*之后的所有代码都可能被注释掉! -
单行注释:以
//开始,到行尾结束。这是C99标准新增的。C 1
2// 这是一个单行注释
int x = 1; // 这也是注释
重要:注释符号在双引号内会失去作用,成为字符串的一部分。printf("// hello /* world */"); 会原样输出 // hello /* world */。
六、printf() 函数:与世界打招呼
printf() 是用于向屏幕输出文本的标准库函数,其名字中的 f 代表“格式化”(format)。
1. 基本用法
1 | |
2. 占位符
占位符允许我们将值嵌入到输出文本中,它以百分号 % 开头。
%d或%i:整数。%s:字符串。%f:浮点数(小数)。
1 | |
注意:占位符的数量必须与后面提供的参数数量一致。
3. 输出格式控制
printf() 可以精细控制输出格式。
- 限定宽度:
%5d表示最小宽度为5位,不足位用空格填充(默认右对齐)。%-5d为左对齐。C 1
2printf("%5d\n", 123); // 输出 " 123"
printf("%-5d\n", 123); // 输出 "123 " - 显示正负号:
%+d使正数也显示+号。C 1
printf("%+d\n", 12); // 输出 +12 - 限定小数位数:
%.2f保留两位小数。可以组合使用:C 1
printf("Number is %.2f\n", 0.5); // 输出 Number is 0.50%6.2f(最小宽度6,两位小数)。
七、标准库与头文件
printf() 等功能并非C语言核心语法的一部分,而是由标准库提供的。标准库是C语言官方提供的一套常用功能集合。
这些功能被声明在头文件(如 stdio.h)中。要使用某个功能,就必须先用 #include 指令引入其对应的头文件。
1 | |
总结
掌握这些基础语法,你就已经打开了C语言编程的大门。记住:
- 语句是动作,用分号结束。
- 表达式是计算,产生值。
- 代码块用
{}组合语句。 - 空格和缩进是为了让人看得舒服。
- 注释是为了解释代码。
printf()是你的输出工具,功能强大。- 头文件是使用标准库功能的钥匙。
现在,尝试在你的开发环境中编写并运行一个简单的 printf 程序吧!