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

Запустить программу из другой программы в качестве нового процесса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функции пользователя в с++ http://www.cyberforum.ru/cpp-beginners/thread403695.html
пыталась сама написать, что-то не получается, помогите
C++ Указатели, символьные строки и функции в с++ помогите пожалуйста написать программу по заданию на картинках http://www.cyberforum.ru/cpp-beginners/thread403692.html
C++ Перегрузка оператора %
Подскажите пожалуйста как перегрузить оператор % для матрицы! #include "StdAfx.h" #include "statik.h" #include <iostream> using namespace std; statik::statik(void) { dim = 2; //...
C++ Вывод матрицы из файла....
Как вывести матрицу 5*5 из файла и записать в двумерный массив?
C++ Вычислить значение функции http://www.cyberforum.ru/cpp-beginners/thread403641.html
Само задание вложено Вот сам код #include "stdafx.h" #include <iostream> #include <conio.h> #include <math.h> using namespace std; //int _tmain(int argc, _TCHAR* argv)
C++ Запонить клетки натурального ряда по порядку "Заполните матрицу A шахматном порядке: клетки одного цвета заполнены нулями, а другого цвета - заполнены числами натурального ряда сверху вниз, слева направо. В левом верхнем углу записано число 1."... подробнее

Показать сообщение отдельно
Klendathu
6 / 6 / 0
Регистрация: 10.11.2011
Сообщений: 51
11.12.2011, 19:21  [ТС]
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include <iostream>
#include <windows.h>
using namespace std;
int cnt; 
long chislo;
char res=2; //результат(1 если является степенью двойки. 0 если нет)
CRITICAL_SECTION cs;//создаем критическую секцию чтобы не повредить переменную res
 
char PowerOfN(long n){
  bool ok = false;
  while(n>=2){
    if (n%2!=0)
      ok = true;
    n = n/2;
    cnt++;
  } 
  
  if (ok == true)
    return 0;  
  else
    return 1;
 
// проверяем число
//возвращаем 1 если степень двойки 0 если нет
}
 
 
unsigned long _stdcall _thread_PowerOfN(void* n)  {
  EnterCriticalSection(&cs); //Входим в критическую секцию
    res=PowerOfN(*(long*)n);
  LeaveCriticalSection(&cs); //Выход из нее
 
} 
 
 
int main(){
//вводим число long chislo;
cout<<"Enter the number"<<endl;
cin>>chislo; 
//запускаем поток.
 
CreateThread(0,0,_thread_PowerOfN,&chislo,0,0);
 
while(1) //ждем пока отработает наш поток
{
Sleep(0);// отдаем процессору время
 
EnterCriticalSection(&cs); //Входим в критическую секцию
 
//тут проверяем если res!=2 то результат получен (при инциализации res=2)
 
if(res!=2) break;
 
LeaveCriticalSection(&cs); //Выход из нее
}
 
 
if (res=='1')
  cout<<cnt;
else
  cout<<"NO";
     
//выводим результат
  return 0;
 
}
Написал как понял. Компилируется, но выкидывает потом из программы, когда число ввожу

Добавлено через 20 часов 4 минуты
Что, никто не может помочь?

Добавлено через 2 часа 52 минуты
Укажите хотя бы в каком месте ошибку искать!!!
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru