gpt4 book ai didi

c - IF 条件下 = 和 == 之间的差异

转载 作者:行者123 更新时间:2023-11-30 21:48:29 25 4
gpt4 key购买 nike

#include<stdio.h>

int main() {
int i = 1, n;
printf("enter value of n");
scanf("%d", &n);
for (i = 1; i <= n; i ++) {
printf("%d", i);
if (i = 5)
break;
}
}

为什么我的代码的输出是 1,而不取决于 N(输入)的值?

最佳答案

= 运算符将左值的值(在您的例子中为 i)设置为右侧的表达式,然后返回多变的。这意味着 i=5 将 i 设置为 5,然后返回 5,这始终为 true,因为 5 != 0。因此,在打印第一个数字(即 1)后,程序立即退出。

关于c - IF 条件下 = 和 == 之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42377933/

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