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

Не выводится матрица - C++

Восстановить пароль Регистрация
 
b_d
4 / 2 / 0
Регистрация: 27.01.2014
Сообщений: 114
18.03.2014, 15:36     Не выводится матрица #1
не выводится матрица и a не равно 1, то есть поток не работает

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <process.h>
#include <stdio.h>
#include <iostream>
#include <Windows.h>
#include <conio.h>
 
using namespace std;
 
int a,i, j , code, matrix[999][999];
char ch;
 
void Thread(void* pParams)
{
    for (i = 1; i < 79; i++)
    for (j = 1; j < 79; j++)
        {
            if (matrix[i][j] = 0) cout << "0";
        }
    a = 1;
}
 
int main(void)
{
    setlocale(0, "");
    code = static_cast<int>(ch);
    _beginthread(Thread, 0, NULL);
 
    if (a == 1) system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.03.2014, 15:36     Не выводится матрица
Посмотрите здесь:

Матрица выводится некорректно C++
В цикле где выводится матрица j принимает какие-то странные значения. Почему? C++
Не выводится результат C++
Почему матрица выводится как обычный массив C++
Матрица выводится в строку C++
C++ Не выводится string
C++ Почему выводится ноль?
C++ Не выводится повторно обработанная матрица
C++ Выводится S=-1,#IO
C++ Не выводится повторно обработанная матрица
C++ Выводится null-строка
не выводится массив C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
18.03.2014, 16:06     Не выводится матрица #2
Ну во-первых синтаксическая ошибка:
C++
1
 if (matrix[i][j] == 0)
а во-вторых поток у вас запускается, но он просто не успевает отработать до того как основная функция (main) полностью отрабатывает и программа закрывается. Надо вставить код ожидания окончания потока:
C++
1
2
3
4
5
6
7
8
9
10
int main(void)
{
    setlocale(0, "");
    code = static_cast<int>(ch);
    _beginthread(Thread, 0, NULL);
    while (a!=1) Sleep(100);
 
        system("pause");
    return 0;
}
Добавлено через 5 минут
У вас кстати говоря (да и я не исправлял) изначально неинециализирована переменная a.
Yandex
Объявления
18.03.2014, 16:06     Не выводится матрица
Ответ Создать тему
Опции темы

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