x86工作正常。 x86 debug values screenshot
但是x64显示不正确。 x64 debug values screenshot
这是代码。
struct vector3 { float x, y, z; };
vector3 mul(vector3 v1, vector3 v2)
{
vector3 v3 = { v1.x * v2.x, v1.y * v2.y, v1.z * v2.z };
return v3;
}
int main()
{
vector3 a = { 1.0f, 1.0f, 1.0f };
vector3 b = { 2.0f, 2.0f, 2.0f };
vector3 c = mul(a, b);
return 0;
}
我首先在我的一个个人项目中注意到这一点,并且能够在一个新项目中复制它(上面的图片来自新项目)。
我很想知道造成它的原因。 也许安装不好或VS错误? 它能够在其他机器上复制吗?
这就像我可以制作代码一样简单。
请注意,此代码在x64上运行正常:
struct vector2 { float x, y; };
vector2 mul(vector2 v1, vector2 v2)
{
vector2 v3 = { v1.x * v2.x, v1.y * v2.y };
return v3;
}
int main()
{
vector2 a = { 1.0f, 1.0f };
vector2 b = { 2.0f, 2.0f };
vector2 c = mul(a, b);
return 0;
}
答案 0 :(得分:0)
重新安装Visual Studio修复了问题。