gpt4 book ai didi

c - 使用静态变量时出错

转载 作者:行者123 更新时间:2023-12-02 21:47:39 24 4
gpt4 key购买 nike

我在学C,为什么静态变量没有增加到1以上。

#include <stdio.h>

int foo()
{
static int a = 0;
return a+1;
}

int main()
{
int i;
for (i = 0; i < 10; i = foo())
printf("%d\n", i);
return 0;
}

这段代码哪里出错了?

最佳答案

因为您没有将任何内容存储回其中。这应该适合你:

int foo()
{
static int a = 0;
return ++a;
}

这里return++a的意思是a = a + 1,即先递增a,然后返回它的值。 a+1 计算结果为 1,但不会将任何内容存储回 a

关于c - 使用静态变量时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19246511/

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