Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
0 / 0 / 0
Регистрация: 25.03.2025
Сообщений: 23

Отвалились стандартные функции вывода std::cout,std::cerr

25.03.2025, 23:23. Показов 25135. Ответов 49
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую,подскажите...плиз
может у кого была такая проблема?...Я уже всю голову сломал
после перерыва решил вернуться снова к программированию на C++, скачал последнюю версию Mingw-64 Win 11
и вдруг к своему полному удивлению обнаружил...что не могу вывести даже строку на экран)))думаю все приехали...отдохнул.
Выяснил,что printf() работает....а std::cout,std::cerr ноль эмоций и компилятор будто не видит стандартную библиотеку
Решил что сборка кривая...ОК...поставил другую..ту,что в прошлый раз работала 100%...результат тот же((

ни ошибок компиляции вообще ничего...просто выводится пустая строка...

заранее благодарю

PS:

у меня даже код

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <cstdio>
 
int main() {
    // Проверяем, открыт ли stdout
    if (stdout == nullptr) {
        std::cerr << "stdout is null!" << std::endl;
        return 1;
    }
 
    // Переподключаем stdout, если он был закрыт
    if (std::freopen("CON", "w", stdout) == nullptr) {
        std::cerr << "Failed to reopen stdout" << std::endl;
        return 1;
    }
 
    std::cout << "Hello, stdout is working!" << std::endl;
    return 0;
}
вообще ничего не выводит((

дополнительные флаги -Wall -Werror тоже ничего не дали
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.03.2025, 23:23
Ответы с готовыми решениями:

main: пред-объявление и пост-объявление функций ;;; std::cout << ""; или using std::cout . cout << "";
Здравствуйте. Есть ли разница между объявлением функций до main и после? Влияет ли это на оптимизацию. Если да то что лучше? Пример: ...

Что и в каких случаях лучше использовать: cerr, clog, cout ?
Доброго времени суток! Подскажите пожалуйста, когда лучше использовать cerr, clog, cout? При буферизованном вводе/выводе данные сначала...

Не воспринимает ни std::cout, ни std::cin. Вобщем ничего из std. Также не понимает iostream
Здравствуйте! Я хотел начать изучать язык C++. Набрал литературы. Установил Microsoft Visual C++ 2005 Express Edition. Образ диска...

49
0 / 0 / 0
Регистрация: 25.03.2025
Сообщений: 23
26.03.2025, 16:38  [ТС]
Студворк — интернет-сервис помощи студентам
так Я кажется начинаю понемногу понимать...при запуске даже такой простенькой проги...консоли требуется связь с библиотекой C++ которую он видимо и не находит

а как скомпилировать файл так,чтобы он был полностью ни от чего независим и самостоятелен?
0
Диванный эксперт
Эксперт С++
 Аватар для Max Dark
2551 / 2065 / 971
Регистрация: 09.10.2013
Сообщений: 4,904
Записей в блоге: 4
26.03.2025, 17:13
Лучший ответ Сообщение было отмечено AlexZwerb как решение

Решение

Цитата Сообщение от AlexZwerb Посмотреть сообщение
а как скомпилировать файл так,чтобы он был полностью ни от чего независим и самостоятелен?
Использовать статические библиотеки.
C++
1
2
3
4
5
6
7
8
9
10
// @file main.cpp
// compile: g++ -c main.cpp
// link: g++ main.o -static -o test
#include <iostream>
 
int main()
{
    std::cout << "Hell must go on!" << std::endl;
    return 0;
}
Миниатюры
Отвалились стандартные функции вывода std::cout,std::cerr   Отвалились стандартные функции вывода std::cout,std::cerr   Отвалились стандартные функции вывода std::cout,std::cerr  

0
0 / 0 / 0
Регистрация: 25.03.2025
Сообщений: 23
26.03.2025, 17:32  [ТС]
Цитата Сообщение от Max Dark Посмотреть сообщение
Использовать статические библиотеки
ДА..благодарю...флаг -static решил все проблемы(хоть и раздул файл)
но в качестве временного решения сойдет(потом гляну может пойму какой библиотеки не хватает в винде и тогда докачаю)

ВСЕМ СПАСИБО!!

Добавлено через 8 минут
вот честно именно из-за таких вещей...Я немного приостыл к программированию))
казалось круто писать программки заставлять что-то работать...но по факту вышло,что 80% времени...Я занят поиском всевозможных косяков и костылей...что дико бесит))
ну ладно прорвемся)
ещё раз, всем спасибо!)

Добавлено через 4 минуты
пока на курсах учился...еще даже не успел приступить к решению задачи...а уже устал и вымотался
потому что то одно не работает,потом другое выдает ошибку...ааааа
0
26.03.2025, 17:51

Не по теме:

AlexZwerb, ИМХО, учиться программированию в Linux проще, чем в Windows.
Для Windows в чем то проще использовать Visual Studio, но там свои заморочки.

0
0 / 0 / 0
Регистрация: 25.03.2025
Сообщений: 23
26.03.2025, 18:56  [ТС]
Все проблема решена!!!))
честно ,Я боялся что в итоге окажется какая-нить банальщина - так и вышло
Все что надо было сделать ,это перенести переменную компилятора в самый верх списка переменных...видимо что-то ему там мешало просто и потому он не находил нужные библиотеки

Не по теме:

Добавлено через 27 минут
Max Dark, да Я уже подумал что наверное надо в Java уходить,проги для Android сейчас пожалуй наиболее востребованные))

0
26.03.2025, 19:13

Не по теме:

Я поражаюсь как некоторые могут найти проблему на ровном месте :D

0
0 / 0 / 0
Регистрация: 25.03.2025
Сообщений: 23
26.03.2025, 19:36  [ТС]
хорошо,Я виндус снести не успел
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
26.03.2025, 20:06
Лучший ответ Сообщение было отмечено AlexZwerb как решение

Решение

Цитата Сообщение от AlexZwerb Посмотреть сообщение
хорошо,Я виндус снести не успел
Теперь будешь "прошаренный".
Я вот не люблю всё прописыватьь в глобальный ПУТЬ.
Если с батника компилирую, указываю путь.
Либо
Windows Batch file
1
path = MyDir;%path%
Даже глупого Eclipse которых без компилятора в путях не могет, отучил, запускаю его через батник, который добавляет путь в системные переменные, по завершении - его удаляет:
PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
$mingw = "c:\local\winlibs-x86_64-posix-seh-gcc-14.1.0-mingw-w64msvcrt-11.0.1-r1\mingw64\bin"
$opencv2 = "c:\local\labs\new_projects\xxxxxxxx\third_party\OpenCV-MinGW-Build-OpenCV-4.5.5-x64\x64\mingw\bin"
$sys = [Environment]::GetEnvironmentVariable("PATH", "Machine");
 
$new_sys = $sys + ';' + $mingw + ';' + $opencv2
[Environment]::SetEnvironmentVariable("PATH", "$new_sys", "Machine")
 
Start-Process -Wait -FilePath "eclipse.exe" -WorkingDirectory "c:\local\eclipse_c++\"
 
$sys = [Environment]::SetEnvironmentVariable("PATH", "$sys", "Machine");
 
Exit
0
0 / 0 / 0
Регистрация: 25.03.2025
Сообщений: 23
26.03.2025, 20:33  [ТС]
Цитата Сообщение от SmallEvil Посмотреть сообщение
$mingw = "c:\local\winlibs-x86_64-posix-seh-gcc-14.1.0-mingw-w64msvcrt-11.0.1-r1\mingw64\bin"
$opencv2 = "c:\local\labs\new_projects\xxxxxxxx\thi rd_party\OpenCV-MinGW-Build-OpenCV-4.5.5-x64\x64\mingw\bin"
$sys = [Environment]::GetEnvironmentVariable("PATH", "Machine");
$new_sys = $sys + ';' + $mingw + ';' + $opencv2
[Environment]::SetEnvironmentVariable("PATH", "$new_sys", "Machine")
Start-Process -Wait -FilePath "eclipse.exe" -WorkingDirectory "c:\local\eclipse_c++"
$sys = [Environment]::SetEnvironmentVariable("PATH", "$sys", "Machine");
Exit
SmallEvil, а вот это интересная штука))
помню когда изучали QT там есть такой товарищ,что крови мне попил Qt WebEngine Я все маты сложил,пока не вычитал в его документации, что он не желает компилироваться ни с чем кроме msvc

а так как человек Я крайне ленивый,мне тоже проще написать батник один раз..чтобы он сам развертывался со всеми привязками...и при этом ещё переключался на другой компилятор......но вот как сделать так чтобы после закрытия программы компилятор обратно перепрыгивал на mingw реализовать не сумел((

сейчас попробую окунуться в этот powerShell(честно вообще не знаком...может и получится,чего путного)
0
0 / 0 / 0
Регистрация: 24.11.2025
Сообщений: 2
24.11.2025, 13:00
C++
1
2
3
4
5
#include <iostream>
using namespace std; // подключение std сразу а не когда выводим на экран строку
int main(){
cout << "Hello world" << endl;  //sdt:: не пишем
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.11.2025, 13:00

Перенаправление std::cerr
Всем доброго времени суток! Возможно вопрос очень простой, но вразумительного ответа найти не смог. Необходимо перенаправить вывод из...

cout vs. std::cout
всем доброго времени суток. начал самостоятельно изучать c++. скачал в сети много разныx умныx книжек.. обнаружил в примераx кода...

В чем разница std::cout и просто cout?
Ребят ,подскажите на простом языке для чайников . В чем разница std::cout и просто cout?

Std::vector<std::pair<std::vector<int>::iterator, std::vector<int>::iterator>
Вопрос по вектору. Допустим есть вектор, std::vector&lt;int&gt; vec; на каком - то этапе заполнения я ставлю закладку итератора, ...

ошибка error: cannot convert 'std::string {aka std::basic_string<char>}' to 'std::string* {aka std::basic_stri
на вод поступают 2 строки типа string. определить количество вхождений строки 2 в строку 1 ошибка error: cannot convert 'std::string {aka...


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

Или воспользуйтесь поиском по форуму:
50
Ответ Создать тему
Новые блоги и статьи
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru