在C中,如果您有以下代码:
for (size_t x, y = someValue; y > 0; y -= x, ptr1 += x, ptr2 += x)
{
// do stuff
}
Run Code Online (Sandbox Code Playgroud)
变量y也可以是size_t类型还是int?
宣言
int a,b,c;
size_t x,y,z;
Run Code Online (Sandbox Code Playgroud)
表示所有a,b,c与x,y,z(size_t)的类型(int)相同
for循环中的声明没有区别 - 在你的例子中,x和y都是size_t类型
但是在你的例子x中没有初始化(只有y被设置为somevalue) - 除非循环体设置为某种东西,你会发现它y -= x会给你随机的未定义结果.