gpt4 book ai didi

查看 'puts'返回值,然后呢?

转载 作者:行者123 更新时间:2023-12-02 02:11:07 28 4
gpt4 key购买 nike

我开始编写代码来检查函数的返回值,但我不确定在捕获到一些错误后如何继续。

例如,在 fgets 中:

while( fgets( rta, 3, stdin ) == NULL ) {
printf( "Ocurrio un error al evaluar su respuesta. Intente nuevamente./n" );
}

但是对于 puts 呢?

它会在错误时返回 EOF,所以我做:

if( puts( "Message" ) == EOF ) {
error handle...
}

问题是,如果它失败了,我应该怎么做。我会考虑在控制台中显示一条消息(这是一个控制台应用程序),但如果 puts 失败,那么我的消息也会失败。(因为我也会使用 puts)。

我应该使用 assert 来显示消息并结束应用程序吗?

非常感谢。

最佳答案

除非您迫切需要与不再可用的某人/某物进行通信,否则您通常会忽略此类函数的返回值。

如果您真的需要记录您的进度或失败,请打开一个日志文件并在其中写入您的所有消息(或使用系统日志之类的东西)。

基本上,如果您使用的是 stdio,那么很可能有人在某个时候将您的程序挂接到管道(例如 | less)或执行其他一些会导致 stdout 消失的事情。

当您忽略 printf 和 puts 的返回值时,像 lint 这样的程序会报错,但事实是 99% 的返回值都是无用的,除非在极端情况下。

关于查看 'puts'返回值,然后呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12792689/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com