У меня есть простая функция, которая берет строку цифр и превращает их в число с плавающей запятой, функция под ним:
float convertStrToFloatNumber (std::string n) {
// Converts the number n to a float in the form of 000.000
if (6 - n.length() > 0) {
// The representation is with trailing zeros
n.append(6 - n.length(), '0');
}
// Insert . at the 3. spot
n.insert(3, ".");
return strtof((n).c_str(), 0);
}
Как бы я ни выбрасывал следующее исключение при запуске с вводом "030000"
:
"завершить вызов после выброса экземпляра 'std :: length_error' what (): basic_string_M_repalce_aux", что меня действительно интересует, так это понимание того, что означает последняя часть ошибки.