c - 在没有 if 条件的情况下调用等于运算符

标签 c

我在查看产品中的一些旧代码时发现了以下代码。

#include <stdio.h>
#include <string.h>
int main ( int argc, char **argv) {
    const char *str = "abcdefghi";
    int value = strcmp(str, "abcdefghi") == 0;
}

这样的代码 int value = strcmp(str, "abcdefghi") == 0; 的目的是什么。

最佳答案

它用 strcmp(str, "abcdefghi") == 0 的结果初始化 value,这将是 0 1 取决于 strcmp 返回的内容。

关于c - 在没有 if 条件的情况下调用等于运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10408433/

相关文章:

c - fprintf 返回成功但无法写入现有文件

c - 从/到 OpenGL 模型 View 矩阵获取和设置 Pitch Yaw Roll

c - 如何存储 char *array[3] 类型的数组?

c - 保存当前的阅读位置,以便我以后可以寻找它

c - 最重要的位在左边吗?

c - 在 C 中读取/写入 UNIX 管道

java - 反模问题 where gcd(denominator,mod)!=1

c - 在 Win 7 (cygwin) 中构建 OpenOCD 时如何解决 "undefined reference to ` isascii'"

c - 使用 LIBSVM 将 svm.cpp 文件与我的 C 程序链接时出错

无法增加取消引用的指针的值