外观
C语言基础
简介
C语言是一种通用的、过程式的编程语言,由Dennis Ritchie于1972年在贝尔实验室开发。它以其高效性和灵活性而闻名,是许多现代编程语言的基础。
主要特点
- 高效性: 直接操作内存,运行速度快
- 可移植性: 代码可以在不同平台上编译运行
- 结构化编程: 支持函数和模块化编程
- 低级访问: 可以直接操作硬件和内存
基本语法
c
#include <stdio.h> //预处理命令,载入头文件
int main() { //主函数,程序的入口
// 输出Hello World
printf("Hello, World!\n");
return 0;
}
1
2
3
4
5
6
7
2
3
4
5
6
7
- 一个C语言程序由一个或多个函数组成,每个函数都有一个入口点和一个出口点。
- 一个源程序有且只能有一个主函数(main函数),程序从主函数开始执行。
- 每个源文件可由一个或多个函数组成。
- 程序执行时,程序的控制权从主函数开始,依次执行每个函数中的语句,直到主函数结束。程序执行从main开始,在main中结束。
- 源程序中可以有预处理命令(以
#
开头),通常应放在源文件或源程序的最前面。 - 注释: 注释是对代码的解释和说明,不会被编译器执行。
- 标识符: 标识符是用来标识变量、函数、类型等的名称。
- 数据类型: 基本数据类型如整数、浮点数、字符等。
- 变量: 用于存储数据的内存位置。
- 运算符: 算术运算符、关系运算符、逻辑运算符等。
- 语句: 执行特定操作的代码行。
- 函数: 封装了一系列语句的代码块,可重复使用。
- 库函数: 由编译器提供的一组函数,如printf, scanf等。
- 头文件: 包含函数原型的文件。
- 编译: 将源代码转换为可执行文件。
- 链接: 将多个目标文件链接成一个可执行文件。
书写规范
- 每条语句以分号结束。但预处理命令、函数头和右花括号后不需要分号(结构除外);
- 标识符、关键字之间要有间隔,可以使空格或间隔符(如运算符、括号等);
- C语言区分大小写;
- /* */ 注释块,不允许嵌套注释;
- // 注释行,允许嵌套注释;
- 一行可以写多个语句,一个语句也可以分几行书写。
编译和运行
bash
gcc hello.c -o hello
./hello
1
2
2
数据类型
- 基本类型: int, char, float, double
- 派生类型: 数组, 指针, 结构体, 联合体
- 枚举类型: enum
控制结构
- 条件语句: if, else, switch
- 循环语句: for, while, do-while
- 跳转语句: break, continue, return
内存管理
- 动态内存分配: malloc(), calloc(), realloc(), free()
- 指针操作: &, *, ->, []
文件操作
- 文件打开/关闭: fopen(), fclose()
- 文件读写: fread(), fwrite(), fscanf(), fprintf()
最佳实践
- 使用有意义的变量名
- 保持代码简洁和模块化
- 注意内存管理和指针使用
- 编写清晰的注释
- 遵循编码规范