gpt4 book ai didi

c - 关于 int 未定义增量的警告

转载 作者:太空宇宙 更新时间:2023-11-04 00:32:10 26 4
gpt4 key购买 nike

我在使用 avr-gcc 时遇到了一个奇怪的问题。如果我这样做:

int i = 0;
i = ++i;

它导致编译器警告:

warning: operation on ‘i’ may be undefined

这里有什么问题吗?

如果改写为

i = i + 1;

它不会导致警告。

avr-gcc 是 4.3.4 版,我在 Ubuntu 10.04 上运行它。

最佳答案

如果您打算简单地增加 i,则使用 either

i = i + 1;

++i;

(或 i++),但不能同时使用。 C 的规则不允许您在单个序列点之前修改变量两次。前置自增(++i)和赋值(i =)都会修改i的值。

关于c - 关于 int 未定义增量的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9967706/

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