gpt4 book ai didi

c - 将 C 移植到 Go,在 if 检查中修改变量

转载 作者:IT王子 更新时间:2023-10-29 00:40:04 24 4
gpt4 key购买 nike

我正在尝试将以下 C 代码移植到 Go:

if (x == 0 || x-- == 0) {
// Stuff
}

这在 Go 中是不合法的,因为我不能在检查子句中修改 x

没有例如,在 Go 中表示它的好方法是什么?复制 block 的内容?

最佳答案

如果 x-- 是一个拼写错误,应该是 --x,那么我将对 x 进行明确的更改:

if x == 0 || x == 1 {
x = 0

// Stuff
} else {
x--
}

否则,您的 C 代码有错误。如果 x == 0 为 false,则 x-- == 0 也将为 false,因为您使用的是后增量运算符。因此,代码相当于:

if (x == 0) {
// Stuff
} else {
x--;
}

关于c - 将 C 移植到 Go,在 if 检查中修改变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48610855/

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