Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试使用一些利用三元语句的代码来运行特定部分,但是,当我这样做时,我收到警告:
expression result unused
并且该特定部分中的代码不会运行。
这种情况下的代码是:
i != a ?: printf("|%*s\\\n", i, "");
为什么会这样?根据这里,这种形式的三元运算符,其中没有替代的情况,应该起作用,但是,它在这里简单地跳过它。任何帮助表示赞赏。
您的代码相当于
(i != a) ? (i != a) : printf(...);
请注意,您最终不会使用i != a结果,因此会发出警告。最好把它写成一个if声明:
i != a
if
if(i==a) printf(...);