Когда я отправляю переменную в Excel, она меняет ее значение. Это просто происходит с Excel. Это также происходит, когда переменная хранится в контейнере. Я думаю, это будет более понятно, если вы увидите код:
#include<iostream>
#include<array>
#include<vector>
#include<fstream>
const int aSize{ 150000 };
std::array<double, aSize> anArray{};
int main(void)
{
double aValue{ 0.00000005467 };
std::vector<double> aVector;
for (int i = 0; i < aSize; ++i)
{
anArray[i] = aValue;
aVector.push_back(aValue);
}
std::ofstream fileOne, fileTwo, fileThree, fileFour, fileFive;
fileOne.open("array.xls");
fileTwo.open("array.txt");
fileThree.open("vector.xls");
fileFour.open("vector.txt");
fileFive.open("value.xls");
fileOne << anArray[0];
fileTwo << anArray[0];
fileThree << aVector[0];
fileFour << aVector[0];
fileFive << aValue;
std::cout << aValue << "\n" << anArray[0] << "\n" << aVector[0];
return 0;
}
Все, что я делаю, это заполняю вектор и массив. Если я печатаю значение переменной, я получаю ожидаемое значение. Если я отправлю его в .txt, я получу ожидаемое значение. Если я отправляю только значение в Excel, я получаю ожидаемое значение.
Все просто ломается, когда я отправляю значение из контейнеров в Excel. Почему это может происходить?