我有一个全局变量“count”。我想做的就是每次循环运行时增加它。将静态计数初始化为0是否存在潜在问题?这在C中是如何工作的?
static unsigned short count = 0;
while(1)
{
count++;
// do something
}
答案 0 :(得分:2)
是的你可以,为什么你认为你不能?但如果值为0
,则可以跳过初始化,因为static
变量会自动初始化为0
。此外,由于@ M.M commented here强制要求该值为常量,因此您无法分配malloc()
的结果。
没有潜在的问题,没有理由认为会出现问题。除了整数溢出之外,在您的代码中很可能会发生但它与变量的存储类无关。