C++ - to_string не работает на нескольких компиляторах (MinGW, MinGW64, TDM GCC) в Code::Blocks в Windows

Я в отчаянии. В Windows 7 с использованием Code::Blocks я установил около полудюжины вариантов MinGW / TDM-GCC, но я не могу получить to_string для преобразования моего int в строку, например:

std::cout << std::to_string(1) << ' - one' << std::endl;

выходы 1544173669

Я видел различные сообщения об ошибках о том, что to_string не работает в более ранних версиях MinGW (начиная с версии 4.7 - 4.9), но я пробовал последние версии безрезультатно. Я следовал этим инструкциям, чтобы установить последнюю версию TDM-GCC, соответственно изменив настройки цепочки инструментов и отладчика.

Все, что я прошу, это какое-то объяснение и решение, почему это не работает. Я могу предоставить любую дополнительную информацию по мере необходимости.

2 ответа

Решение

Это фактически напечатало это правильно для вас, плюс причины, вашей многосимвольной константы (которая определяется реализацией)...

std::cout << std::to_string(1) << ' - one' << std::endl;

Вы используете двойные кавычки для представления строки, возможно, вы хотели написать:

std::cout << std::to_string(1) << " - one" << std::endl;

Я предполагаю, что вы имеете в виду " - один".

'' предназначены только для одиночных символов.

Другие вопросы по тегам