【发布时间】:2017-01-14 01:07:18
【问题描述】:
我正在尝试使用一个静态变量,该变量在每次函数调用时都会递减,但它会不断重置自身(对于静态变量来说有点奇怪):
int func()
{
static int x;
x = 5;
x--;
return (x);
}
int main(int ac, char **av)
{
int x;
x = 5;
while (x != 0)
{
printf("%i\n", func());
x--;
}
}
输出是:
5 5 5 5 5
您必须知道这是出于学校目的,我们的老师禁止我们在同一行声明和初始化变量。我们也不能通过参数传递它。
【问题讨论】:
-
x = 5;-- 不是 it 继续重置它的elt; 你继续重置它! -
是的,但是如何在不重置自身的情况下声明它?
-
static int x = 5;??? -
好吧,我不能。这是为了学校的目的。我们的老师禁止在同一行使用声明和初始化