perror和strerror的问题
来源:互联网 发布:网络舆论引导途径 编辑:程序博客网 时间:2024/05/16 17:31
perror()是把一个函数发生错误的原因输出到标准出错设备中(stderr);库函数中有errno变量每一个errno的值都会对应一个错误类型 在输出的时候perrno函数只会把你输出的信息好errno所对应的错误信息一起输出 void perrno( const char *s );int main( void ){/* pid_t pid; pid = fork( ); if( pid < 0 ) perror("pid"); printf("%c\n",'d'); return 0;*/ FILE *fp = NULL; fp = fopen( "./abcdef" ,"r" ); if( fp == NULL ) perror("./abcdef"); printf("OK\n");}因为没有 "./abcdef"这个文件所以会输出./abcdef: No such file or directory因为程序不会终止 所以还会输出OK如果想终止 则可以在perror()后面添加exit(0)函数;----------------------------------------------strerror char *strerror(int errnum);通过标准错误的符号 获取到错误的描述字符串 以单纯的错误标志转为字符串描述输出到标准输出流 stdout中#include <stdio.h>#include <string.h>#include <errno.h>#include <stdlib.h>#define ERR_EXIT(m) do{\ fprintf(stdout,"[%s] [%d] %s %s\n",__FILE__,__LINE__,m,strerror(errno));\ exit(0);\}while(0)int main( void ){ FILE *fp = NULL; fp = fopen( "./abcdef","r" ); if( fp == NULL ) ERR_EXIT("./abcdef"); return 0;}------------------------------------------strerror(errnum) 就是要把错误的数字当参数转化为相应的字符串这就是这两个函数的区别 都是不中断函数!
0 0
- perror和strerror的问题
- perror和strerror的区别
- perror 和 strerror 的区别
- perror和strerror的使用和区别
- 库函数perror和strerror的使用
- linux下的strerror和perror
- perror() 和 strerror()
- perror和strerror
- perror 和 strerror 区别
- perror 和 strerror 区别
- errno perror strerror的使用
- perror()与strerror()的应用
- 1-6例示strerror和perror
- errno、stderr、perror函数和strerror函数
- errno、stderr、perror函数和strerror函数
- 错误输出函数perror和strerror用法
- APUE 1-8 strerror 和 perror
- errno、stderr、perror函数和strerror函数
- java并发编程第四章 总结
- 拓撲排序學習
- 认识一下身边的互联网---经典互联网书籍阅读总结
- CentOS 7.0 VMware虚拟机 查找不到网卡 查找不到eth0
- 【猫猫的Unity Shader之旅】之纹理映射
- perror和strerror的问题
- 陈力:传智播客古代 珍宝币 泡泡龙游戏开发第二讲html运行原理及结构
- 游戏程序员养成计划
- itoa()进制转换函数
- Java中static关键字总结
- 计算文字尺寸
- TCP协议
- CURD操作详解
- 用java 判断mysql中某个表是否存在