gpt4 book ai didi

c - 条件表达式中的指针/整数类型不匹配

转载 作者:行者123 更新时间:2023-12-05 01:26:58 24 4
gpt4 key购买 nike

gcc 4.7.2 c89

你好,

我收到以下警告:

pointer/integer type mismatch in conditional expression

我正在使用以下 CFLAGS -Wall -Wextra

进行编译
fprintf(stderr, "'Failed to open file' Error [ %s ]\n",
(errno == 0) ? "None" : strerror(errno));

程序运行正常,但我看不到警告的全部内容。 "None"和 strerror(errno) 都返回一个字符串而不是整数值。我正在将错误号与零进行比较。

非常感谢您的任何建议,

最佳答案

检查是否包含<string.h> header 。如果不是,返回值strerror可以被认为是一个整数值。它可以解释为什么程序运行正常(链接器可以找到名为 strerror 的匹配函数,因为默认链接 C 标准库),而编译器报告警告。

关于c - 条件表达式中的指针/整数类型不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13220087/

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