0

我正在从包含如下行的文件创建一维和二维数组:

42857000 -923070 0 0 -7887 428570 -546190 -4285700 546190 0 -6.5 -0.15384 6.5 0.15384 0.007 0 0 42857000 360570 0

当我从文件中填充数组时,它们会转换为科学记数法:

42857000 >>>>> 4.2857000e+007 等等!!!

有没有办法阻止这一切?

我的数组定义如下:

float aMatrix[DEFROWS][DEFCOLS] = {0.0};
float bMatrix[DEFCOLS] = {0.0};

这个问题导致我的应用程序崩溃。

谢谢。

4

2 回答 2

3

我认为这只是使用cout. 如果是这种情况,请使用std::fixed

std::cout << std::fixed << whateverNumberCurrentlyInScientific;
于 2012-07-17T17:57:13.850 回答
0

读入或发送时会崩溃吗?您使用的是 cout 还是 printf?一种非常常见的崩溃方法是使用带有 %d 的 printf 并向其发送浮点值。

于 2012-07-17T18:17:45.330 回答