Форум программистов, компьютерный форум CyberForum.ru

Не выводит текст в консоль - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
04.12.2013, 22:01     Не выводит текст в консоль #1
Программа, скомпиленная в Visual C++, не выводит текст. Эта же программа, скомпиленная в MinGW выводит. Почему?
C++
#include <cstdio>
#include <windows.h>
 
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
    printf("%d\n", 7);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2013, 22:01     Не выводит текст в консоль
Посмотрите здесь:

C++ Написать программу, которая получает трехзначное число, “переворачивает” его и выводит результат в консоль
C++ Написать программу, которая выводит в консоль только четные целые числа из диапазона от 1 до 20
C++ Написать программу, которая выводит в консоль все числа, кратные 3 в диапазоне от 0 до 100
Написать программу, которая предлагает пользователю ввести число и выводит в консоль его факториал C++
C++ Не выводит Hello World в консоль
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.12.2013, 22:30     Не выводит текст в консоль #2
В студии какая подсистема выбрана?
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
04.12.2013, 22:44  [ТС]     Не выводит текст в консоль #3
Цитата Сообщение от alsav22 Посмотреть сообщение
В студии какая подсистема выбрана?
Окно Win32

Добавлено через 2 минуты
В интернете пишут, что оконные программы не выводят текст в консоль. Поэтому надо выводить в файл.

зы: скомпиленные с MinGW программы выводят текст в консоли нормально.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.12.2013, 22:53     Не выводит текст в консоль #4
Цитата Сообщение от programina Посмотреть сообщение
Окно Win32
Цитата Сообщение от programina Посмотреть сообщение
В интернете пишут, что оконные программы не выводят текст в консоль.
В студии, если выбрать консоль, и изменить точку входа на WinMain, то всё выведется. В Code Blocks(mingw), если в Build targets выбрать GUI application, то ничего не выведется, если выбрать Console application, то выведется.
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
04.12.2013, 23:09  [ТС]     Не выводит текст в консоль #5
Цитата Сообщение от alsav22 Посмотреть сообщение
В Code Blocks(mingw), если в Build targets выбрать GUI application, то ничего не выведется, если выбрать Console application, то выведется.
В mingw достаточно не использовать опцию -mwindows для компиляции оконного приложения, чтобы иметь доступ к консоли.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11845 / 6824 / 771
Регистрация: 27.09.2012
Сообщений: 16,919
Записей в блоге: 2
Завершенные тесты: 1
04.12.2013, 23:21     Не выводит текст в консоль #6
Ну добавьте вызов AllocConsole ( ) в начало WinMain

Добавлено через 4 минуты
И еще, данные printf выводит не на консоль, а в стандартный поток вывода. Попробуйте запустить Вашу программу с переопределением потока вывода в файл:
"my.exe > myfile.txt"
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
05.12.2013, 00:06  [ТС]     Не выводит текст в консоль #7
Цитата Сообщение от Croessmah Посмотреть сообщение
AllocConsole ( )
Уже делала так, не сработало.

Буду выводить в файл.

Добавлено через 2 минуты

Не по теме:

Если бы не directx, то компилировала бы в MinGW, в котором как всегда все работает.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.12.2013, 01:09     Не выводит текст в консоль
Еще ссылки по теме:

C++ запускается консоль и ничего не выводит
Не выводит в консоль результаты работы программы C++
C++ Написать программу, которая считывает текст из файла и выводит на экран количество гласных букв в строке текст

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Jupiter
Каратель
Эксперт C++
6543 / 3963 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
05.12.2013, 01:09     Не выводит текст в консоль #8
AllocConsole ( )
Цитата Сообщение от programina Посмотреть сообщение
Уже делала так, не сработало.
создать консоль недостаточно, нужно в неё ещё перенаправить поток вывода
http://stackoverflow.com/a/13154691
Yandex
Объявления
05.12.2013, 01:09     Не выводит текст в консоль
Ответ Создать тему
Опции темы

Текущее время: 09:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru