这个怎么会报重定义啊
for(int i = 0;i < height;++i)
{
for(int j = 0;j < width;++j)
{
(*(imagedata + i * width + j)).blue = 0;
//(*(imagedata + i * width + j)).green = 0;
//(*(imagedata + i * width + j)).red = 0;
}
}
//初始化旋转后图片的像素数组
for(int i = 0;i < 2 * height;++i)
{
for(int j = 0;j < 2 * width;++j)
{
(*(imagedataRot + i * 2 * width + j)).blue = 0;
//(*(imagedataRot + i * 2 * width + j)).green = 0;
//(*(imagedataRot + i * 2 * width + j)).red = 0;
}
}
这个怎么会报重定义啊 error C2374: 'i' : redefinition; multiple initialization
[解决办法]
不同的编译器对for语句中定义的变量的生命周期控制不一样。
有的在for语句结束后变量声明周期结束,有的在函数内for语句以下都有效。
可以试试,VC6和VC2005好像就不一样。
[解决办法]
VC6编译器的Bug
http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express
右边Visual C++ 2010 Express下面的Select language...下拉选‘简体中文’,再按Install Now按钮