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

Программа крестики нолики, исправить ошибки в коде - C++

Восстановить пароль Регистрация
 
Leonid95
0 / 0 / 0
Регистрация: 21.04.2014
Сообщений: 4
21.04.2014, 20:28     Программа крестики нолики, исправить ошибки в коде #1
Уже неделю пишу программу для игры крестики нолики и понял, что всё очень печально. Был бы очень признателен за помощь. Есть проблема,с которой я не знаю как справиться. Вот сама проблема error C2660: _itoa_s: функция не принимает 3 аргументов. Что делать??? Я прекрасно понимаю,что значит 'функция не принимает 3 аргументов', но как это исправить или на что это заменить???
Вот сам код программы:

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
138
139
140
141
142
143
144
145
146
147
#include "stdafx.h"
#include <iostream>
#include <time.h>
#include <string.h>
#include <cstdlib>
#include <stdio.h>
 
using namespace std;
void main()
{
char KN[9]={' ',' ',' ',' ',' ',' ',' ',' ',' '};
int n_y;
int t=0, i=0, r=0, hod=0, f=0, v=0;
int krst=264;
int nl=237;
int nich=32;
int DA=0;
int vibor=0;
char * nolik = new char[17];
char * krestik = new char[17];
char * probel = new char[17];
 
 
            //______________________________Схема игры________________________________________
                cout<<"\n\t  ********************************************************"<<endl;
                       cout<<"\n\t\tDOBRO POGHALOVAT V IGRU  < KRESTIKI NOLIKI >\n\n\a\a"<<endl;
                       cout<<"\t\t     NA RISUNKE IZOBRAGHENA  SHEMA IGRI\n\n"<<endl;
                    cout<<"\t\t  **    **    **   "<<"-------"<<"   **    **   **  "<<endl;
                    cout<<"\t\t**  **   **  **    "<<"|1|2|3|"<<"    **  **  **  **"<<endl;
                    cout<<"\t\t**  **     **      "<<"-------"<<"      **    **  **"<<endl;
                    cout<<"\t\t**  **     **      "<<"|4|5|6|"<<"      **    **  **"<<endl;
                    cout<<"\t\t**  **     **      "<<"-------"<<"      **    **  **"<<endl;
                    cout<<"\t\t**  **   **  **    "<<"|7|8|9|"<<"    **  **  **  **"<<endl;
                    cout<<"\t\t  **    **    **   "<<"-------"<<"   **    **   **  "<<endl;
                cout<<"\n\t  ********************************************************\n\n"<<endl; 
                cout<<" Viberite kem vi hotite bit\n"<<endl;
            //______________________________Выбор символа_____________________________________
                do{ 
                    cout<<" KRESTIKOM < X > -> 1\n\n NOLIKOM   < O > -> 2\n\n Vash vibor: ";
                    cin>>vibor; cout<<"\a";
                    if(vibor!=1 && vibor!=2) 
                    {
                        cout<<endl<<"Vi moghete vibrat tolko 1 - <X> ili 2 - <O>\n\n\n\n\a";
                    }
                    if(vibor==1) { cout<<"\nVi vibrali < KRESTIK >\n\n";}
                    if(vibor==2) { cout<<"\nVi vibrali < NOLIK >\n\n";  }
                }while(vibor!=1 && vibor!=2);
 
 
//______________Ввод символа пользователем________________________
for(hod=1; hod<=6; hod++)
{
    cout<<"Vvedite nomer yacheyki : ";
    cin>>n_y;  cout<<endl;          
        int cifr_klav[9]={1,2,3,4,5,6,7,8,9};
        if(n_y>0 && n_y<10)
        {
            for(f=0; f<9; f++)
            {
                if(n_y==cifr_klav[f])
                {
                    if( KN[f]!=' ')
                        { cout<<endl<<"Eta yacheyka zanyata! Viberite pustuyu yacheyku!\a\n"<<endl; r=1; hod--;}
                    
                    else
                    {
                        if(vibor==1) // X             
                        { KN[f]='X'; _itoa_s(KN[f], krestik, 10); r=0;}
                        if(vibor==2) // O           
                        { KN[f]='O'; _itoa_s(KN[f], nolik, 10); r=0;}
                    }
                }
            }           
            if (KN[n_y]==' ') { _itoa_s(KN[n_y],probel,10); }
        }
        else { cout<<endl<<"Vi moghete vibrat yacheyku tolko v diapazone ot < 1 > do < 9  >\a\n"<<endl; r=1; hod=0; continue;}
 
 
//______________Ввод символа компьютером_____________________________
            if(r!=1)
            {
                srand( time( NULL ) );
                label:  n_y=rand()%9;
                        if(hod==5) 
                            {  n_y=rand()%10;}
                        else
                        {
                            if(KN[n_y]=='X' || KN[n_y]=='O')
                                     goto label;
                            else
                            {
                                if(vibor==1) // X
                                {   KN[n_y]='O'; _itoa_s(KN[n_y],nolik,10);   }
                                if(vibor==2) // O
                                {   KN[n_y]='X'; _itoa_s(KN[n_y],krestik,10); }
                            }
                        }
                
            }
//____________________________________________Вывод результата на екран_____________________________________________________
                    cout<<"\t\t\t Hod : "<<hod<<"\n\n"<<endl;
                    cout<<"\t\t  **    **    **   "<<"-------"                              <<"   **    **   **  "<<endl;
                    cout<<"\t\t**  **   **  **    "<<"|"<<KN[0]<<"|"<<KN[1]<<"|"<<KN[2]<<"|"<<"    **  **  **  **"<<endl;
                    cout<<"\t\t**  **     **      "<<"-------"                              <<"      **    **  **"<<endl;
                    cout<<"\t\t**  **     **      "<<"|"<<KN[3]<<"|"<<KN[4]<<"|"<<KN[5]<<"|"<<"      **    **  **"<<endl;
                    cout<<"\t\t**  **     **      "<<"-------"                              <<"      **    **  **"<<endl;
                    cout<<"\t\t**  **   **  **    "<<"|"<<KN[6]<<"|"<<KN[7]<<"|"<<KN[8]<<"|"<<"    **  **  **  **"<<endl;
                    cout<<"\t\t  **    **    **   "<<"-------"                              <<"   **    **   ** \a\n "<<endl;
//______________________________________Если выбран крестик_______________________________________
   if ( (KN[0]+KN[4]+KN[8]==krst)  || (KN[2]+KN[4]+KN[6]==krst)  || 
        (KN[0]+KN[1]+KN[2]==krst)  || (KN[3]+KN[4]+KN[5]==krst)  || (KN[6]+KN[7]+KN[8]==krst) ||
        (KN[0]+KN[3]+KN[6]==krst)  || (KN[1]+KN[4]+KN[7]==krst)  || (KN[2]+KN[5]+KN[8]==krst)   )
   {
               if(vibor==1)
                 {cout<<"\n\t\t\t  !!!!!  VI VIYGRALI  !!!!!\n\n\a\a\a"<<endl; break;}
               if(vibor==2)
                    {cout<<"\t\t\t\tVI PROIGRALI\a\a"<<endl; break;}
 
   }
 
//______________________________________Если выбран нолик__________________________________
   if ( (KN[0]+KN[4]+KN[8]==nl) || (KN[2]+KN[4]+KN[6]==nl) ||                                
        (KN[0]+KN[1]+KN[2]==nl) || (KN[3]+KN[4]+KN[5]==nl) || (KN[6]+KN[7]+KN[8]==nl) ||   
        (KN[0]+KN[3]+KN[6]==nl) || (KN[1]+KN[4]+KN[7]==nl) || (KN[2]+KN[5]+KN[8]==nl)   )   
        {
               if(vibor==2)
                 {cout<<"\n\t\t\t  !!!!!  VI VIYGRALI  !!!!!\n\n\a\a\a"<<endl; break;}
               if(vibor==1)
                    {cout<<"\t\t\t\tVI PROIGRALI\a\a"<<endl; break;}
 
        }
//________________________________________Условия ничьи_____________________________________________________________________________________________________
  
     if ( (KN[0]+KN[4]+KN[8]!=krst)  && (KN[0]+KN[4]+KN[8]!=nl)  &&  (KN[0]+KN[1]+KN[2]!=krst)  && (KN[0]+KN[1]+KN[2]!=nl)  &&   
          (KN[0]+KN[3]+KN[6]!=krst)  && (KN[0]+KN[3]+KN[6]!=nl)  &&  (KN[2]+KN[4]+KN[6]!=krst)  && (KN[2]+KN[4]+KN[6]!=nl)  &&     
          (KN[3]+KN[4]+KN[5]!=krst)  && (KN[3]+KN[4]+KN[5]!=nl)  &&  (KN[1]+KN[4]+KN[7]!=krst)  && (KN[1]+KN[4]+KN[7]!=nl)  &&   
          (KN[6]+KN[7]+KN[8]!=krst)  && (KN[6]+KN[7]+KN[8]!=nl)  &&  (KN[2]+KN[5]+KN[8]!=krst)  && (KN[2]+KN[5]+KN[8]!=nl)  && 
          (KN[2]!=nich && KN[5]!=nich && KN[8]!=nich && KN[3]!=nich && KN[4]!=nich&& KN[5]!=nich && KN[6]!=nich&& KN[7]!=nich && KN[8]!=nich) && (hod==5)) 
                {cout<<"\t\t\t       XO! NICHYA !OX"<<endl;break;} 
                 
}
 
delete nolik;
delete krestik;
delete probel;
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2014, 20:28     Программа крестики нолики, исправить ошибки в коде
Посмотрите здесь:

C++ Программа крестики и нолики
Пишу крестики-нолики. Что не правильно в этом коде? C++
C++ исправить ошибки в коде
исправить ошибки в коде C++
Поиск ошибки в коде. Игра Крестики-Нолики C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11825 / 6804 / 769
Регистрация: 27.09.2012
Сообщений: 16,872
Записей в блоге: 2
Завершенные тесты: 1
21.04.2014, 20:33     Программа крестики нолики, исправить ошибки в коде #2
Цитата Сообщение от Leonid95 Посмотреть сообщение
Что делать?
использовать itoa? Или передавать все необходимые параметры.
Leonid95
0 / 0 / 0
Регистрация: 21.04.2014
Сообщений: 4
21.04.2014, 20:56  [ТС]     Программа крестики нолики, исправить ошибки в коде #3
error C4996: 'itoa': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _itoa. See online help for details.
С itoa вот такая ошибка
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11825 / 6804 / 769
Регистрация: 27.09.2012
Сообщений: 16,872
Записей в блоге: 2
Завершенные тесты: 1
21.04.2014, 20:58     Программа крестики нолики, исправить ошибки в коде #4
Цитата Сообщение от Leonid95 Посмотреть сообщение
С itoa вот такая ошибка
а прочитать никак?
Цитата Сообщение от Leonid95 Посмотреть сообщение
error C4996: 'itoa': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _itoa. See online help for details.
Leonid95
0 / 0 / 0
Регистрация: 21.04.2014
Сообщений: 4
21.04.2014, 21:07  [ТС]     Программа крестики нолики, исправить ошибки в коде #5
error C4996: '_itoa': This function or variable may be unsafe. Consider using _itoa_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
21.04.2014, 21:15     Программа крестики нолики, исправить ошибки в коде #6
Цитата Сообщение от Leonid95 Посмотреть сообщение
error C4996: '_itoa': This function or variable may be unsafe. Consider using _itoa_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
Даже не знаю
Leonid95
0 / 0 / 0
Регистрация: 21.04.2014
Сообщений: 4
21.04.2014, 21:16  [ТС]     Программа крестики нолики, исправить ошибки в коде #7
какие ещё варианты существуют???
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2014, 21:24     Программа крестики нолики, исправить ошибки в коде
Еще ссылки по теме:

Крестики - нолики. Комментарии. Программа. Объясните часть кода C++
Крестики-нолики (в классах) - Правильно ли структурно написана программа C++
Исправить ошибки в коде C++

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

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11825 / 6804 / 769
Регистрация: 27.09.2012
Сообщений: 16,872
Записей в блоге: 2
Завершенные тесты: 1
21.04.2014, 21:24     Программа крестики нолики, исправить ошибки в коде #8
а еще прочитать?
Цитата Сообщение от Leonid95 Посмотреть сообщение
error C4996: '_itoa': This function or variable may be unsafe. Consider using _itoa_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
Strtok и strtok_s
Yandex
Объявления
21.04.2014, 21:24     Программа крестики нолики, исправить ошибки в коде
Ответ Создать тему
Опции темы

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