|
12
|
| Michael Mior Aouidane Med Amine · 技术社区 · 15 年前 |
|
1
6
为什么不简单地使用结果呢,正如警告所建议的那样。
由于函数是用“warn_unused_result”属性声明的,因此除非使用返回值,否则将收到警告。由于函数在失败时返回空值,或者在成功时返回文件流参数,因此您可能会考虑分配结果。但是,你不应该 像这样分配给stderr(见下文),所以这是一个坏主意:
理论上,您应该进行检查;在可怕(和不可信)的情况下,您可能无法打开“/dev/null”。 C99标准注释中的脚注229:
因此,这项任务是不明智的。但是测试返回值将处理编译器警告,并可能有助于防止核心转储。但是,它不太可能提高代码覆盖率数字(错误路径不会经常采用;很难强制覆盖错误处理)。
注意的posix描述
|
|
|
2
11
gcc扩展有点重,但没有外部可见的变量:
|
|
3
2
作为下面的评论,请尝试
和
|
|
|
4
2
如果你真的必须使用C语言(而不是C++),那么你可以使用这种方法:
例如
|
|
|
MaPo · Linux,设置锁定ICMP_过滤器选项 1 年前 |
|
Doohyeon Won · 内联函数上的奇怪现象?[关闭] 1 年前 |
|
|
Bobby · 复合字面值总是左值吗? 1 年前 |
|
9-Pin · C: 嵌套结构的堆栈内存分配 1 年前 |