У меня есть 2 вопроса:
Я пытаюсь получить данные из другого файла, инициализировать их в переменные, а затем вывести переменные в другой файл. Я могу получить все входные данные в отдельные переменные, кроме 1 строки (строка должна быть переменной).
Мой входной файл содержит следующие данные:
557.9012043 0.673621489 7210984732 1.891092837
238 a 789.234 b
Yes Please
cannot wait for hawaii
Строку «Да, пожалуйста» следует воспринимать как целую строку, однако «Да» и «Пожалуйста» разделяются.
Мой код для этого:
outFile << fixed << showpoint;
outFile << setprecision(10);
inFile >> w >> x >> y >> z >> int1 >> char1 >> float1 >> char2 >> string1
>> word1 >> word2 >> word3 >> word4;
outFile << w << endl;
outFile << x << endl;
outFile << y << endl;
outFile << z << endl;
outFile << float1 << endl;
outFile << int1 << endl;
outFile << char1 << endl;
outFile << char2 << endl;
outFile << string1 <<endl;
outFile << word1 << endl;
outFile << word2 << endl;
outFile << word3 << endl;
ouFile << word4 << endl;
}
Когда я запускаю его, мой outFile состоит из:
557.9012043000
0.6736214890
7210984732.0000000000
1.8910928370
789.2340000000
238
a
b
Yes
Please
cannot
wait
for
Как я могу получить всю строку «Да, пожалуйста», назначенную моей переменной string1?
Вопрос 2: Мой outFile имеет все дополнительные 0 в переменных с плавающей запятой, потому что я установил точность. На самом деле моя цель — использовать переменные для решения уравнений. Я хотел бы, чтобы ответы на уравнения печатали только 10 значащих цифр. Как бы я выполнил эту задачу без точности после десятичной точки, равной 10 цифрам?
Я очень новичок в C ++, поэтому, если вы ответите, не могли бы вы объяснить, почему вы дали такой ответ. Я не пытаюсь только получать ответы, я хочу учиться. Спасибо.