C语言错误处理 #
一、errno变量 #
1.1 概述 #
errno是全局变量,存储最近一次错误码。
1.2 使用示例 #
c
#include <stdio.h>
#include <errno.h>
int main() {
FILE* fp = fopen("nonexistent.txt", "r");
if (fp == NULL) {
printf("错误码: %d\n", errno);
}
return 0;
}
二、perror函数 #
2.1 功能 #
打印错误信息。
2.2 示例 #
c
#include <stdio.h>
#include <errno.h>
int main() {
FILE* fp = fopen("nonexistent.txt", "r");
if (fp == NULL) {
perror("打开文件失败");
}
return 0;
}
三、strerror函数 #
3.1 功能 #
获取错误描述字符串。
3.2 示例 #
c
#include <stdio.h>
#include <string.h>
#include <errno.h>
int main() {
FILE* fp = fopen("nonexistent.txt", "r");
if (fp == NULL) {
printf("错误: %s\n", strerror(errno));
}
return 0;
}
四、常见错误码 #
| 错误码 | 说明 |
|---|---|
| ENOENT | 文件不存在 |
| EACCES | 权限不足 |
| ENOMEM | 内存不足 |
| EINVAL | 无效参数 |
五、总结 #
| 方法 | 说明 |
|---|---|
| errno | 错误码 |
| perror | 打印错误 |
| strerror | 错误描述 |
恭喜你完成C语言学习!
最后更新:2026-03-26