В прошлый раз, когда я сильно использовал C++, это было много лет назад, и это было строго сделано на платформе Windows. В частности, я использовал Microsoft Visual Studio в качестве моей среды разработки и разработал некоторые привычные шаблоны для использования Microsoft C++. Например, я использовал void main() вместо стандарта int main().Ресурсы для написания кода ANSI C++
Теперь я беру класс, где требуется разработать программы, совместимые с ANSI C++, и код будет скомпилирован с использованием g ++. Я быстро узнал, что система («ПАУЗА») не работает в g ++ и, вероятно, является Microsoft.
Кто-нибудь знает какие-либо хорошие ресурсы (сайты, учебные пособия, книги), где я могу узнать, что еще лучше, чем жалоба ANSI C++?
спасибо.
Функция системы() является стандартной. Это команда «пауза», которой нет. Функция просто выдает команды системной оболочке. – Clifford
Попробуйте это более портативный * pause * idiom: 'std :: cin.игнорировать (1000000, '\ n'); '. Он ждет, пока не будет введена новая строка. –
В ожидании новой строки часто не удается остановить программу, особенно в программах новичков, которые используют значение std :: cin >>, чтобы что-то прочитать, чтобы новая строка, следующая за вводом, осталась непрочитанной. Обычно лучше всего читать std :: cin по функции std :: getline, так что вход на самом деле читается строкой за раз. Это позволяет избежать понимания того, как работает строка с буферизованным входом из ОС (почему ничего не может быть прочитано до тех пор, пока пользователь не нажимает кнопку ввода, за исключением некоторых систем или с некоторыми настройками терминала, или если по какой-либо причине вход покраснет). – Tronic