perror()函数的使用

函数定义:

  void perror(const char *s); perror ("open_port");

包含头文件(不可以掉了这个头文件):

#include <stdio.h>//包含perror的头文件

函数说明

  perror ( )用 来 将 上 一 个 函 数 发 生 错 误 的 原 因 输 出 到 标 准 设备 (stderr) 。参数 s 所指的字符串会先打印出,后面再加上错误原因字符串。此错误原因依照全局变量error 的值来决定要输出的字符串。在库函数中有个error变量,每个error值对应着以字符串表示的错误类型。当你调用"某些"函数出错时,该函数已经重新设置了error的值。perror函数只是将你输入的一些信息和现在的error所对应的错误一起输出。

举例:

#include <stdio.h>//包含perror的头文件
#include <process.h>
#include <direct.h>//包含mkdir、rmdir的头文件
#include <iostream>
using namespace std;
int main(void)
{
	int status;
	system("cls");//清屏

	status = mkdir("cam");//创建文件夹,创建成功则返回0,否则返回-1
	cout << status << endl;
	(!status) ? (printf("Directory created\n")) : (perror("Unable to create directory\n"));
	//!status不等于0为真,结果为第一个,否则为第二个

	system("pause");//屏幕暂停

	system("dir"); /*显示创建后当前文件夹下的文件信息*/
	status = rmdir("cam"); /*删除创建的文件夹book*/
	(!status) ? (printf("Directory deleted\n")) :(perror("Unable to delete directory"));
	system("pause");
	return 0;
}


运行结果:


如果我们的文件夹已经存在,仍然使用mkdir函数创建文件夹时,会发生什么呢?(此时perror函数就会发挥作用)


因为cam文件夹已经存在,所以mkdir返回-1,perror除了输出:Unable to create directory,后面紧跟着具体原因:

File exists

  • 19
    点赞
  • 109
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值