C语言作为一门基础且功能强大的编程语言,其知识点涵盖基础语法、数据类型、控制结构、函数、指针、数组、结构体等核心内容。以下是主要知识点的梳理:
注释
单行注释:// 注释内容
多行注释:
数据类型
基本类型:int
(整数)、float
(单精度浮点数)、char
(字符)等
类型转换:强制类型转换(如 (int)3.14
)
变量与常量
变量声明:int num = 10;
常量:使用const
关键字(如const int MAX_USERS = 100;
)
字符串:用字符数组表示(如char name = "Alice";
)
顺序结构
代码按顺序执行,无需条件判断
选择结构(分支结构)
if-else
语句:
if (x > 0) { printf("正数");
} else {
printf("非正数");
}
switch
语句:
switch (day) { case 1: printf("周一"); break;
case 2: printf("周二"); break;
// 其他情况
}
循环结构
for
循环:for (int i = 0; i < 10; i++)
while
循环:while (x > 0)
do-while
循环:do { printf("执行"); } while (x > 0)
函数定义与调用 :
int add(int a, int b) { return a + b; } printf("%d", add(3, 4));
参数传递 :值传递与指针传递
返回值 :函数可返回基本数据类型或指针
指针基础 :int *ptr = &num;
(取地址)
指针运算 :ptr++
(指针自增)
动态内存分配 :malloc
和free
(如int *arr = (int *)malloc(10 * sizeof(int));
)
数组与指针 :数组名可视为指针常量(如arr
等价于*(arr + 0)
)
数组 :用于存储相同类型数据,下标从0开始(如int scores
)
字符串 :以0
结尾的字符数组(如char str[] = "Hello";
)
数组越界 :如scores
可能访问非法内存
结构体 :自定义数据类型(如struct Student { char name; int age; };
)
联合体 :存储不同类型数据(如union Data { int i; float f; };
)
输入输出函数 :fopen
、fclose
、fread
、fwrite
(如读写文本文件)
预处理指令 :include
(引入头文件)、define
(宏定义)
编译与链接 :使用gcc
编译(如gcc -o program program.c
)
以上知识点覆盖了C语言的核心内容,建议通过实践项目(如计算器、学生成绩管理系统)加深