c语言异常处理函数 c语言异常处理程序代码

c语言库函数中有error函数吗?

c语言标准库函数里没有error函数。C语言对异常的处理确实不够好,大多的时候都需要人工除错。

站在用户的角度思考问题,与客户深入沟通,找到西和网站设计与西和网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:做网站、网站制作、企业官网、英文网站、手机端网站、网站推广、主机域名、虚拟空间、企业邮箱。业务覆盖西和地区。

有几个类似的函数,分别处理各种情况下的异常:

ferror函数:在调用各种输入输出函数(如

putc.getc.fread.fwrite等)时,如果出现错误,除了函数返回值有所反映外,还可以用ferror函数检查。

它的一般调用形式为

ferror(fp);如果ferror返回值为0(假),表示未出错。如果返回一个非零值,表示出错。应该注意,对同一个文件

每一次调用输入输出函数,均产生一个新的ferror函

数值,因此,应当在调用一个输入输出函数后立即检

查ferror函数的值,否则信息会丢失。在执行fopen函数时,ferror函数的初始值自动置为0。在库函数中有个errno变量,每个errno值对应着以字符串表示的错误类型。当你调用"某些"函数出错时,该函数已经重新设置了errno的值。perror函数只是将你输入的一些信息和现在的errno所对应的错误一起输出。

perror函数:

用来将上一个函数发生错误的原因输出到标准设备(stderr)。参数

s

所指的字符串会先打印出,后面再加上错误原因字符串。此错误原因依照全局变量errno

的值来决定要输出的字符串。

strerror函数:用来

从错误号码

用英文表达的错误内容,返回指针,指向这段英文字符串。如果你不知道错误号,那么在出错发生时,及时用

errno

的当前值

作参数,打印这段字符串。

C语言异常处理和exit()怎样使用?

c语言中exit()函数的用法:

用exit()函数可以退出程序并将控制权返回给操作系统,而用return语句可以从一个函数中返回并将控制权返回给调用该函数的函数。如果在main()函数中加入return语句,那么在执行这条语句后将退出main()函数并将控制权返回给操作系统,这样的一条return语句和exit()函数的作用是相同的。下例是一个使用了exit()函数和return语句的程序:

#include stdio.h

#include stdlib.h

int main (int, char** );

int do_processing (void);

int do_something_daring();

int main (int argc, char** argv)

{

int ret_code;

if (argc 3)

{

printf ("Wrong number of arguments used ! \n");

/* return 1 to the operating system * /

exit(1);

}

ret_code = do_processing ();

......

/* return 0 to the operating system * /

exit(0);

}

int do_processing(void)

{

int rc;

rc = do_aomcthing_daring();

if (rc == ERROR)

{

printf ("Something fiahy ia going on around here... *\n);

/* return rc to the operating syatem * /

exit (re);

}

/* return 0 to the calling function * /

return 0;

}

在上例的main()函数中,如果argc小于3,程序就会退出。语句“exit(1)”指示程序在退出时将数字1返回给操作系统。操作系统有时会根据程序的返回值进行一些相关的操作,例如许多DOS批处理文件会通过一个名为ERRORLEVEL的全局变量来检查可执行程序的返回值。

C语言异常处理

bad_alloc:new分配失败

bad_cast:dynamic_cast失败

bad_typeid:typeif参数为空

logic_error:逻辑错误

ios_base::failure:IO错误

runtime_error:运行时错误

bad_exception:未知错误

赋值不成功可以用runtime_error,你也可以自己继承一个异常类过来,自定义异常信息


本文题目:c语言异常处理函数 c语言异常处理程序代码
文章链接:http://azwzsj.com/article/doojdog.html