![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
WebXL |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2005 Репутация: нет Всего: нет |
Здравствуйте!
Я только начал изучать сpp! Создал файл first.cpp с текстом ---------- #include <iostream.h> void main(void) { cout << "ПРИВЕТ!"; } ---------- Компилируется нормально, а при запуске, на долю секунды появляется окно и сразу исчезает, хотя должен вывести надпись "ПРИВЕТ!" Компилирую в borland c++ 5.5 ОС Win XPSP2. Ошибок нет, скорее всего и надпись выводится, просто окно сразу исчезает. Как сделать чтобы окно с надписью оставалось (и я мог увидеть надпись)? |
|||
|
||||
azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
|
|||
|
||||
Найли |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 9.1.2005 Где: Россия, Новосибир ск Репутация: нет Всего: нет |
просто добавь в код, напрмиер, while(1); после cout
и все окно не исчезнет при использовании getch() окно закроется при нажатии любой клавиши, а при while(1) его надо будет закрывать в ручную Это сообщение отредактировал(а) Найли - 14.1.2005, 11:58 |
|||
|
||||
WebXL |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2005 Репутация: нет Всего: нет |
просто добавь в код, напрмиер, while(1); после cout
и все окно не исчезнет ----------- Что-то не получилось :-( Добавлено @ 12:03 Код #include <iostream.h> #include <conio.h> void main(void) { cout << "ПРИВЕТ!"; getch(); } ---------------- Окно не исчезло, но текст выдался в виде непонятных символов (наверное кодировка...), А с этой проблемой можно справиться? Спасибо Вам за помощь! Добавлено @ 12:08
При использовании while(1); компилятор выдал ошибку. При использовании getch() окно осталось, но символы нечитабельные. Что-то я не в одном учебнике (где во всех, поголовно, этот код - пример первой программы) описаний таких проблем не встретил. Как с кодировкой (или что это там еще такое) быть я совсем не в курсе :-( |
|||
|
||||
Найли |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 9.1.2005 Где: Россия, Новосибир ск Репутация: нет Всего: нет |
вот так всё нормально работает |
|||
|
||||
WebXL |
|
||||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2005 Репутация: нет Всего: нет |
Так работает!!! Но только латинскими символами. А Вы не знаете, как включить поддержку кириллицы??? |
||||
|
|||||
azesmcar |
|
||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
Да да, зависшее окошко придется закрывать вручную.. ![]() Посмотри в окошке TaskManager сколько ресурсов будет жрать этот бесконечный цикл...Какой в этом смысл??? getch() вполне подходит для этой цели...
А тут уже getch() абсолютно непричем... Ты пишешь в своей оболочке кирилицей win кодировкой...а программа твоя работает в досовском окне, т.е. тут нужна досовская кодировка...если хочешь на русском ковертируй кодировку или пиши в оболочке досовской кодировкой... |
||||
|
|||||
WebXL |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2005 Репутация: нет Всего: нет |
Спасибо! Разобрался, и за урок "умного" программирования спасибо - действительно неправильно, если с самого начала учиться программировать так, что простая программка будет жрать ресурсов как большая ОС :-) |
||||||
|
|||||||
Nicky |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 71 Регистрация: 18.12.2004 Где: Кишинёв Репутация: нет Всего: 1 |
Это плохой стиль программирования ![]() Использование функции getch() лучший вариант в этом случае ![]() Это сообщение отредактировал(а) Nicky - 19.1.2005, 14:58 |
|||
|
||||
Tripl-X |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 29.12.2004 Репутация: 1 Всего: 1 |
Да,Nicky прав. тоько не забудь подключить библиотеку conio.h, я вот раз забыл, меня прееод на экзамене завалил...
![]() |
|||
|
||||
Nastya |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 27.3.2002 Где: Мариуполь Репутация: 5 Всего: 44 |
И еще перед вызовом getch()
напиши cout.flush() или cout<<endl а то часть выведенного перед этим моежт не показаться -------------------- Что бы понять рекурсию, надо понять рекурсию "Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор |
|||
|
||||
Nicky |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 71 Регистрация: 18.12.2004 Где: Кишинёв Репутация: нет Всего: 1 |
с этим никогда пока ешё не было проблем ![]() ![]() |
|||
|
||||
Tripl-X |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 29.12.2004 Репутация: 1 Всего: 1 |
Nastya
Ни разу не слышал... ![]() |
|||
|
||||
Nicky |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 71 Регистрация: 18.12.2004 Где: Кишинёв Репутация: нет Всего: 1 |
Я тоже первый раз это вижу но всётаки опыт покажет ведь я так понял что Nasty достаточно опытна в этом
![]()
|
|||
|
||||
Nastya |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 27.3.2002 Где: Мариуполь Репутация: 5 Всего: 44 |
Спасибо Nicky.
Для чего эта фишка. постараюсь пояснить. Но вот вам вопрос ![]() Если второе это просто символ перевода коретки и перевода строки, то тгда зачем ввели второе. Дело в том, что обычно (по умолчанию) cout поток буферезированный, т.е. все что вы выводите на экран сначало попадает в буфер, а после заполения или принудительного выталкивание уже "показывается" на экране. так вот когда мысочетаем потовококвые функции с сишными функциями ввода/вывода, которой и является getch может быть ситуация, когда выведенный текст "застрянет" в буфере, если буфер заполнен частично. Для этого и нужен cout.flush() это все протолкнуть ![]() -------------------- Что бы понять рекурсию, надо понять рекурсию "Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |