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

Мозг взрывается - C++

Восстановить пароль Регистрация
 
stepan48
0 / 0 / 0
Регистрация: 09.06.2010
Сообщений: 7
09.06.2010, 14:54     Мозг взрывается #1
Помогите пожалуйста, не могу понять почему консольное окно закрывается, пробовала всё что только можно :fgetc(stdin);system ("pause >> void");getch(); всё бестолку, вот код, может чем поможете.

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#include <stdio.h>
#include <windows.h>
#include <process.h>    /* _beginthread, _endthread */
#include <stddef.h>
#include <stdlib.h>
#include <conio.h>
#include <iostream>
 
using namespace std;
 
 
 
 
        double yskr ;
         double ves;
        double massa;
 
 
HANDLE          hMutex;
unsigned int __stdcall papa(void* param)
{
    double a[]={9.8, 273.1,3.68, 8.88, 3.86, 23.95, 10.44, 8.86, 11.09, 0.78 };
                 int r;
cout << "na planete vec cheloveka = ";
                cout << (long)(a[r-1]*massa)<< "kg";
 
 
     return 0;
} 
unsigned int __stdcall pana(void* param)
{
                  
 cout << "\nEsli chelovek dvigetsa vverh c etim yskoreniem, to ego ves = ";
                cout << (long)(massa*(9.8+yskr))<< "kg";
     return 0;
} 
 
unsigned int __stdcall paka(void* param)
{
                
 
cout << "\nEsli chelovek dvigetsa vnis c etim yskoreniem, to ego ves =";
                cout << (long)(massa*(9.8-yskr))<<"kg";
 
     return 0;
} 
 
     
int hand()
{
cout << "Vvedite ves cheloveka na Zemle:" ;
        cin >> ves ;
        cout << "Vvedite yskorenie: " ;
        cin >> yskr;
 
 
        cout << "\nTogda ego massa=";
        massa=(long)(ves/9.8);
        cout << massa<< " H";
 
       {
 
 
             double a[]={9.8, 273.1,3.68, 8.88, 3.86, 23.95, 10.44, 8.86, 11.09, 0.78 };
                 int r;
                 cout << "\n";
                 cout << "Programma vichisliaet ves cheloveka" ;
                 cout << "\nna raznih planetah" ;
                 cout << "\n1-Zemlia, 2-Solnche, 3-Merkyriy, 4-Venera," ;
                 cout << "\n5-Mars, 6-Upiter, 7-Satyrn, 8-Yran," ;
                 cout << "\n9-Neptun, 10-Plyton.";
 
                cout << "\nVvedite nomer planeti po spisky :" ;
                cin >> r;
                if (r<1 || r>10)
                {
                        cout << "oshibka" ;
                        system ("pause >> void") ;
                        return 1;
                }
}
 
 
 
     HANDLE hThreads [3];
    unsigned threadID[3];
 
    hMutex=CreateMutex(NULL, FALSE, NULL);
 
     hThreads[0]= (HANDLE)_beginthreadex(NULL,0, papa, NULL, 0, &threadID[0]);
     hThreads[1] = (HANDLE)_beginthreadex( NULL,0, pana, NULL, 0, &threadID[1]);
      hThreads[2] = (HANDLE)_beginthreadex( NULL,0, paka, NULL, 0, &threadID[2]);
     WaitForMultipleObjects(3, hThreads,true, INFINITE);
     
 
CloseHandle(hThreads [0]);
    CloseHandle(hThreads [1]);
CloseHandle(hThreads [2]);
 
    ReleaseMutex( hMutex );
 
fgetc(stdin);
fgetc(stdin);
system ("pause >> void");
    
getch();
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NIch
 Аватар для NIch
399 / 310 / 27
Регистрация: 17.03.2010
Сообщений: 1,120
09.06.2010, 15:15     Мозг взрывается #2
Может
Код
system ("pause");
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
09.06.2010, 15:22     Мозг взрывается #3
stepan48, скорее всего программа до этого и не доходит, а аварийно завершается где-то раньше. Вы это чудо где взяли? Кстати, второй пункт меню очень понравился

Добавлено через 2 минуты
Цитата Сообщение от stepan48 Посмотреть сообщение
system ("pause >> void") ;
И кто Вас этому научил? Поменяйте как Вам сказали, может и заработает...
stepan48
0 / 0 / 0
Регистрация: 09.06.2010
Сообщений: 7
09.06.2010, 23:19  [ТС]     Мозг взрывается #4
system ("pause >> void") это тоже самое что и system ("pause "), только компилятор не пишет :"Программа ждёт нажатия любой клавиши", научила меня этому одна умная книга, и при перемене ничего не изменилось.
easybudda, скажи пожалуйста почему программа может аварийно завершатся?

Добавлено через 2 часа 28 минут
А прога не работала потому что я вместо функции main написала функцию hand
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
10.06.2010, 00:41     Мозг взрывается #5
Цитата Сообщение от stepan48 Посмотреть сообщение
прога не работала потому что я вместо функции main написала функцию hand
специально?)
stepan48
0 / 0 / 0
Регистрация: 09.06.2010
Сообщений: 7
13.06.2010, 16:25  [ТС]     Мозг взрывается #6
Когда пишешь в Visual Studio , то там есть какой-то код, который появляется при открытии, если его удалить , прога работать не будет, и в этом коде написана функция tmain, я очень ступила и подумала что это тоже самое что и main, поэтому решила изменить название своей функции.
Yandex
Объявления
13.06.2010, 16:25     Мозг взрывается
Ответ Создать тему
Опции темы

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