float minTime[7]={FLT_MAX};
for(int i=0;i<7;i++)
cout << "Min: " << minTime[i] << endl;
为什么我会得到以下输出:
Min: 3.40282e+038
Min: 0
Min: 0
Min: 0
...
难道所有的值不应该与第一个值相同吗?正如这里提到的:C++ 注释
您的链接页面显示“...未指定的元素设置为零。”
这是对的;因此,只有数组中的第一个元素被指定为FLT_MAX
,其余的都初始化为零。如果您想将它们全部设置为相同的值,您可以使用 for 循环,或更简洁:
std::fill_n(minTime, 7, FLT_MAX);
警告一下,C++ 是一种硬语言。这意味着很多人都有很多错误信息,而这在互联网上尤其容易找到。你最好向在我们的清单上预订。 (是的,那些not我们的名单上是如此,因为它们也包含错误信息!)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)