RK3568平台(基础篇)linux错误码

一.概述

linux应用程序开发过程中,经常会遇到一些错误信息的返回,存在的可能性有,参数有误、非法访问、系统资源限制、设备/文件不存在、访问权限限制等等。对于这类错误,可以通过perror函数输出具体描述,或者通过strerror函数,将错误码转换为具体描述字符。linux函数调用失败时,错误码存放于一个全局变量errno中。

二.将错误码转换为具体错误描述

复制代码
#include <errno.h>
#include <string.h>
char *strerror(int errno);

/* 使用伪代码 */
ret = ioctl(fd, SIOCGIFCONF, (char*)&ifc);
if(ret)
{
	printf("ioctl failed,%s\n", strerror(errno));
}

然而一些情况下,为了节约存储空间;或者为了不让用户直接看到详细的错误信息描述,我们期望是输出一个错误码到日志文件中,运维或者开发人员根据具体错误码找到对应的错误信息描述。

三.错误码翻译表

对于4.15 linux内核版本,错误码定义文件路径如下,不同版本内核可能不一样,特别是相对较旧版本的内核。

基本错误码定义位于"include/uapi/asm-generic/errno-base.h"

其他错误码定义位于"include/uapi/asm-generic/errno.h"

错误码翻译:

相关推荐
AI智域边界 - Alvin Cho9 分钟前
Bloomberg、LSEG 与 MCP 缺口:为什么尚未发布完整的 MCP 服务器,以及多智能体系统如何解決这问题
运维·服务器
人间打气筒(Ada)11 分钟前
zerotier内网穿透部署(rockylinux部署本地服务器)超详细~~~
linux·内网穿透·内网·公网·zerotier·穿透
A阳俊yi28 分钟前
Spring Data JPA
java·开发语言
小王不爱笑13232 分钟前
Spring AOP(AOP+JDBC 模板 + 转账案例)
java·后端·spring
遇印记38 分钟前
蓝桥java蜗牛
java·学习·蓝桥杯
Elias不吃糖1 小时前
Git常用指令合集
linux·git
m0_565611131 小时前
Java-泛型
java·windows
张np1 小时前
java基础-集合接口(Collection)
java·开发语言
_OP_CHEN1 小时前
Linux网络编程:(七)Vim 编辑器完全指南:从入门到精通的全方位实战教程
linux·运维·服务器·编辑器·vim·linux生态·linux软件
jakeswang1 小时前
ServletLess架构简介
java·后端·servletless