std :: cout внутри main () ничего не печатает в консоли отладки во время отладки - PullRequest
0 голосов
/ 17 июня 2020

Любой оператор cout внутри основной функции не выводит никаких значений во время отладки, но cout внутри других функций выводит значения во время вызова функции (я использую vscode)

#include<iostream>
using namespace std;
int main()
{
int a;
a=9;
if(a==9)
{
cout<<"hello";}
return 0;
}

при отладке, помещая точку останова на первая строка main () "hello" не печатается в консоли отладки.

#include <iostream>
using namespace std;
void fun(int n)
{
if (n > 0)
{
    cout << n << endl;
    fun(n - 1);


}
}

int main()
{
int x = 3;
fun(3);
cout<<x;
return 0;
}

, но когда это отлаживается путем помещения точки останова в первую строку main (), значения печатаются как 3 2 1

1 Ответ

0 голосов
/ 17 июня 2020

std :: cout помещается в буфер. Попробуйте использовать std :: flu sh или std :: endl.

Также вы можете попробовать использовать std :: cerr вместо std :: cout.

...