vc6 — мигает результат даже системной паузы переполнения стека

Вот мой код … Я хочу остановить его на результат, но результат показывает после нажатия клавиши … Он мигает результат после нажатия клавиши … Я использую Microsoft Visual C ++ 6.0 и Windows 7.

#include <iostream.h>
#include <conio.h>
#include <stdlib.h>

void main() {
int a, b, n;
int danni[6][25];

cout << "n= ";
cin >> n;

for (a = 0; a < n; a++) {
for (b = 0; b < n; b++) {
cout << "danni[" << a << "][" << b << "]= ";
cin >> danni[a][b];
}
}

for (a = 0; a < n; a++) {
cout << "\n ";

for (b = 0; b < n; b++) {
//cout<<danni[a][b]<<" ";
cout << "Fak nomer: " << a << b;
}

cout << "Spec: " << a << b;
cout << "Grupa: ";
cout << a << b;
cout << "Sreden uspeh: " << a << b;
}

system("pause");
}

0

Решение

Вызов cout.flush(); до системной паузы. Другим вариантом будет добавить и cout << endl(так как он скрытно сбрасывает поток).

3

Другие решения

Потоки выполняют буферизацию. Это означает, что они не всегда пишут в консоль, как только вы их об этом просите, но ждите немного большего ввода, чтобы они могли делать это порциями и сохранять некоторые ресурсы.

Однако в этом случае вы хотите, чтобы поток был полностью очищен перед паузой.

Для этого напишите любое из следующего:

std::cout.flush();
std::cout << std::flush;
0

По вопросам рекламы [email protected]