gpt4 book ai didi

c - C 中 'for' 循环中的两个变量

转载 作者:太空狗 更新时间:2023-10-29 17:04:24 24 4
gpt4 key购买 nike

我正在编写一些代码,我需要在 for 循环中使用两个变量。下面的代码看起来没问题吗?

它确实给了我预期的结果。

for (loop_1 = offset,loop_2 = (offset + 2); loop_1 >= (offset - 190),loop_2 <= (190 + offset + 2); loop_1--,loop_2++)
{
if ( (*(uint8_t*)(in_payload + loop_1) == get_a1_byte(bitslip)) &&
((*(uint8_t*)(in_payload + loop_2) == get_a2_byte(bitslip)))
)
{
a1_count++;
}
}

但是我收到一个编译器警告,上面写着:

file.c:499:73: warning: left-hand operand of comma expression has no effect

这是什么意思?

最佳答案

问题是测试条件:

loop_1 >= (offset - 190),loop_2 <= (190 + offset + 2)

这不会检查两个部分。 (嗯,确实如此,但只使用了第二部分的结果。)

改成

(loop_1 >= (offset - 190)) && (loop_2 <= (190 + offset + 2))

如果您希望同时检查这两个条件。

关于c - C 中 'for' 循环中的两个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7783284/

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