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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 48, средняя оценка - 4.69
Drozd Oleg
1 / 1 / 1
Регистрация: 21.02.2010
Сообщений: 61
#1

Run-Time Check Failure #3 - C++

21.02.2010, 10:51. Просмотров 6684. Ответов 9
Метки нет (Все метки)

Господа, может кто мне поможет.
Код (глупый конечно код, но как могу):

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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <clocale>
#include <windows.h>
using namespace std;
// Функции потока
DWORD WINAPI ThreadFunc1(PVOID Parametr)
{
char v1[4][20];
char var;
switch(var)
{
case 'Y': strcpy (v1[0],"минус");break;
case 'N': strcpy (v1[0],"");break;
}
return 0;
}
 
DWORD WINAPI ThreadFunc2(PVOID lpParametr)
{
int num[3];
char v1[4][20];
switch(num[0])
{
case 1: strcpy(v1[1],"сто");break;
case 2: strcpy(v1[1],"двести");break;
case 3: strcpy(v1[1],"триста");break;
case 4: strcpy(v1[1],"четыреста");break;
case 5: strcpy(v1[1],"пятьсот");break;
case 6: strcpy(v1[1],"шестьсот");break;
case 7: strcpy(v1[1],"семьсот");break;
case 8: strcpy(v1[1],"восемьсот");break;
case 9: strcpy(v1[1],"девятьсот");break;
}
if( num[1] == 0 || num[1] > 1 )
{
if( num[1] > 1 )
{
switch( num[1] )
{
case 2: strcpy(v1[2],"двадцать");break;
case 3: strcpy(v1[2],"тридцать");break;
case 4: strcpy(v1[2],"сорок");break;
case 5: strcpy(v1[2],"пятьдесят");break;
case 6: strcpy(v1[2],"шестьдесят");break;
case 7: strcpy(v1[2],"семьдесят");break;
case 8: strcpy(v1[2],"восемдесят");break;
case 9: strcpy(v1[2],"девяносто");break;
}
}
switch( num[2] )
{
case 1: strcpy(v1[3],"один");break;
case 2: strcpy(v1[3],"два");break;
case 3: strcpy(v1[3],"три");break;
case 4: strcpy(v1[3],"четыре");break;
case 5: strcpy(v1[3],"пять");break;
case 6: strcpy(v1[3],"шесть");break;
case 7: strcpy(v1[3],"семь");break;
case 8: strcpy(v1[3],"восемь");break;
case 9: strcpy(v1[3],"девять");break;
}
}
else if( num[1] == 1 )
{
switch( num[2] )
{
case 0: strcpy(v1[2],"десять");strcpy(v1[3],"");break;
case 1: strcpy(v1[2],"одиннадцать");strcpy(v1[3],"");break;
case 2: strcpy(v1[2],"двенадцать");strcpy(v1[3],"");break;
case 3: strcpy(v1[2],"тринадцать");strcpy(v1[3],"");break;
case 4: strcpy(v1[2],"четырнадцать");strcpy(v1[3],"");break;
case 5: strcpy(v1[2],"пятнадцать");strcpy(v1[3],"");break;
case 6: strcpy(v1[2],"шестнадцать");strcpy(v1[3],"");break;
case 7: strcpy(v1[2],"семнадцать");strcpy(v1[3],"");break;
case 8: strcpy(v1[2],"восемнадцать");strcpy(v1[3],"");break;
case 9: strcpy(v1[2],"девятнадцать");strcpy(v1[3],"");break;
}
}
return 0;
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_CTYPE,"Russian");
DWORD dwThreadId1,dwThreadId2;
HANDLE hThread1,hThread2;
int num[3];
char var;
char v1[4][20];
cout <<"Ваше число отрицательное?: Y/N \n";
cin >> var;
cout <<"Введите число в формате NNN:\n";
for(int i=0;i<3;i++)
{
cin >> num[i];
}
// Код вызова функции для создания потока
// Создание потока в приостановленном состоянии
hThread1 = CreateThread(
            NULL,         // атрибуты безопасности по умолчанию
            0,            // размер стека используется по умолчанию
            ThreadFunc1,   // функция потока
            &var, // аргумент функции потока
            CREATE_SUSPENDED,            // флажки создания используются по умолчанию
            &dwThreadId1); // возвращает идентификатор потока
hThread2 = CreateThread(
            NULL,         // атрибуты безопасности по умолчанию
            0,            // размер стека используется по умолчанию
            ThreadFunc2,   // функция потока
            &num, // аргумент функции потока
            CREATE_SUSPENDED,            // флажки создания используются по умолчанию
            &dwThreadId2); // возвращает идентификатор потока
// Выполнение потока
ResumeThread (hThread1);
ResumeThread (hThread2);
// При успешном завершении проверяет возвращаемое значение.
if (hThread1  == NULL && hThread2  == NULL)
{
cout <<"Потоки созданы не были\n";
}
else 
{
cout <<"Потоки успешно созданы\n";
CloseHandle( hThread1 );
CloseHandle( hThread2 );
}
cout <<"Введенное число прописью:\n";
for(int i=0;i<4;i++)
{
cout <<v1<<" ";
}
getch ();
return 0;
}
Компиллятор Visual Studio 2008 ругается:
Run-Time Check Failure #3 - The variable 'var' is being used without being initialized.
Run-Time Check Failure #3 - The variable 'num' is being used without being initialized.
Причину не подскажете, и как это исправить(поподробнее, с кодом, пожалуйста)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2010, 10:51     Run-Time Check Failure #3
Посмотрите здесь:

Run-time check failure #0 - C++
Добрый день. Помогите пожалуйста, уже который день не могу разобраться с ошибкой. Есть WinAPI обертка. Этот оконный класс наследуется COM...

Run - Time Check Failure #2 - S - C++
Вот сам код, результат выдает правильно, но в самом конце, когда в консоли пишет &quot;Для продолжения введите ...&quot; выскакивает ошибка Run -...

Run-Time Check Failure # 2 - C++
Нужно чтобы програмка находила расстояние между прямыми в пространстве.Она работает,находит правильно,все хорошо.Вот только вконце...

Run-Time Check Failure #3 - C++
// // first.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include...

Run-Time Check Failure #3 - C++
//Написать программу, формирующую из двух WAV файлов новый WAV файл, являющийся суммой двух первых. #include &lt;Windows.h&gt; #include...

ошибка Run-Time Check Failure #2 - C++
под конец програмки освобождал память и ошибка пропадала но происходило аварийное завершение ( подскажите где проблема . class...

Ошибка Run-Time Check Failure #2 - S - C++
#include&lt;iostream&gt; #include&lt;conio.h&gt; using namespace std; int main() { //Матрица предпочтений int Predpochenia; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
outoftime
║XLR8║
506 / 428 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
21.02.2010, 11:21     Run-Time Check Failure #3 #2
C++
1
2
int num[3] = {0};
char v1[4][20] = {0};
Day
1154 / 959 / 57
Регистрация: 29.10.2009
Сообщений: 1,385
21.02.2010, 11:22     Run-Time Check Failure #3 #3
Drozd Oleg, переменная var в функции ThreadFunc1 (и массив num в THreadFunc2) НЕ ПОЛУЧИЛИ НИКАКОГО ЗНАЧЕНИЯ. То что переменные с такими именами описаны (и присвоены) в функции
tmain делу не помогает - ЭТО РАЗНЫЕ ПЕРЕМЕННЫЕ.
Один из выходов - описать var и num перед всеми фунциями, скажем, сразу после #include
(в остальных функциях эти переменные истребить)
Второй - передавать их в виде параметров.
Второй путь - граммотнее.
Но, наверное, тебе понятнее пока будет первый
outoftime
║XLR8║
506 / 428 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
21.02.2010, 11:22     Run-Time Check Failure #3 #4
а лучше передавай ссылки на них
kazak
3033 / 2354 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
21.02.2010, 11:25     Run-Time Check Failure #3 #5
char var;
switch (var);
А что в var находится? Ничего. Надо сначала присвоить какое-нибудь значение ппременной. Аналогично и с num.
Drozd Oleg
1 / 1 / 1
Регистрация: 21.02.2010
Сообщений: 61
21.02.2010, 12:00  [ТС]     Run-Time Check Failure #3 #6
Day, после using namespace std записал:
C++
1
2
3
char v1[4][20];
char var;
int num[3];
в остальных местах стер, ошибка пропала, но при запуске программы получил вот эту радость:
Миниатюры
Run-Time Check Failure #3  
outoftime
║XLR8║
506 / 428 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
21.02.2010, 12:13     Run-Time Check Failure #3 #7
Drozd Oleg, я точно знаю, что кто-то уже написал прогу перевода чисел, поищите ее на форуме, она скорее всего есть в FAQ
Drozd Oleg
1 / 1 / 1
Регистрация: 21.02.2010
Сообщений: 61
21.02.2010, 12:25  [ТС]     Run-Time Check Failure #3 #8
Так то оно так, но хочется эту заставить работать
kazak
3033 / 2354 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
21.02.2010, 13:50     Run-Time Check Failure #3 #9
Цитата Сообщение от Drozd Oleg Посмотреть сообщение
C++
1
2
3
4
for(int i=0;i<4;i++)
{
cout <<v1<<" ";
}
Имя массива без индексов аналогичен указателю на его первый элемент, думается, то что выводится на экран, есть адрес первого элемента массива v1.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.02.2010, 14:21     Run-Time Check Failure #3
Еще ссылки по теме:

run-time check failure #3-не запускаеться программулька - C++
Простая программка, проверяю-правельная. У друзей-работает, а у меня выдает &quot;run-time check failure #3 the variable 'c' is being used...

Ошибка в проге. Run-Time Check Failure #3 - C++
#include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int first (void) { setlocale(LC_ALL, &quot;Russian&quot;); int n; do ...

Run-Time Check Failure #3 - The variable 'v' is being used without being initialized - C++
Mc Visual Studio 2010 C++ при построении таблицы выдает ошибку ...

Run-Time Check Failure #3 - The variable 's' is being used without being initialized - C++
Ребят в чем может быть косяк запарился уже. Выдает эту ошибку я хз что с ней делать:( #include &quot;stdafx.h&quot; #include&lt;iostream&gt; ...

C++ - Run-Time Check Failure #3 - The variable 'c' is being used without being initialized - C++
Нужно исправить код. Вводится последовательность целых чисел. Для каждого числа последовательности проверить, представляют ли его цифры...


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

Или воспользуйтесь поиском по форуму:
Drozd Oleg
1 / 1 / 1
Регистрация: 21.02.2010
Сообщений: 61
21.02.2010, 14:21  [ТС]     Run-Time Check Failure #3 #10
Да, это оно! Теперь все работает как надо! Спасибо всем!
Yandex
Объявления
21.02.2010, 14:21     Run-Time Check Failure #3
Ответ Создать тему
Опции темы

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