Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
1 / 9 / 0
Регистрация: 21.11.2015
Сообщений: 28
1

Исправить незначительные ошибки

05.12.2016, 21:00. Просмотров 251. Ответов 3
Метки нет (Все метки)

Запускал на dev c++, выводил ошибки
In function 'int main()':
91 13 [Warning] deprecated conversion from string constant to 'char*' [-Wwrite-strings]

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
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
#include <iostream>
#include <typeinfo>
#include <clocale>
 
using namespace std;
 
int var_int=38;            int *ptr_int = &var_int;
char var_char='A';          char *ptr_char=&var_char;
wchar_t var_wchar_t='B';    wchar_t *ptr_wchar_t=&var_wchar_t;
bool var_bool=true;          bool *ptr_bool=&var_bool;
float var_float=-0.5;        float *ptr_float=&var_float;
double var_double=0.125;      double *ptr_double=&var_double;
 
 float massiv(float *a1,const int k)
   { double max;
     int counter;
     int imax;
      max=a1[0];imax=0;
       for ( counter = 0; counter < k; counter++)
        {
          if (max<(a1[counter]))
          {max=a1[counter];
           imax=counter;
          };
        };
        cout<<"max element: "<<max<<endl<<"index max elementa:"<<imax<<endl;
}
 
 void example (float *a1)
     {
        double s=0;
        int kol,counter;
        for ( counter = 0; counter < 15; counter++)
           {if (a1[counter]>0) 
             kol=counter+1;
             break;
            }
        for ( counter = kol; counter < 15; counter++)
          {s+=*(a1+counter);
          }
        cout<<"Summa: "<<s<<endl<<endl;
     }
    
     typedef void(*pf)(float*);
     void func (pf ptr, float *a1)
     {
        ptr(a1);
        
     }
 
int main()
{
    setlocale(LC_ALL, "Russian");
    cout << "1)" << endl;
    cout << " çíà÷åíèå ïåðåìåííîé =    " << *ptr_int << endl;
    cout << "àäðåñ ïåðåìåííîé =   " << ptr_int << endl;
    cout << " çíà÷åíèå ïåðåìåííîé=" << *ptr_char << endl;
    cout << "àäðåñ ïåðåìåííîé =   " << ptr_char << endl;
    cout << " çíà÷åíèå ïåðåìåííîé=" << *ptr_wchar_t << endl;
    cout << "àäðåñ ïåðåìåííîé = " << ptr_wchar_t << endl;
    cout << " çíà÷åíèå ïåðåìåííîé= " << *ptr_bool << endl;
    cout << "àäðåñ ïåðåìåííîé = " << ptr_bool << endl;
    cout << " çíà÷åíèå ïåðåìåííîé= " << *ptr_float << endl;
    cout << "àäðåñ ïåðåìåííîé = " << ptr_float << endl;
    cout << " çíà÷åíèå ïåðåìåííîé= " << *ptr_double << endl;
    cout << "àäðåñ ïåðåìåííîé = " << ptr_double << endl;
 
    
        cout << "2)" << endl;
        enum error1 { READ, WRITE, CONVERT };
        enum error2 { V_READ = 2, V_WRITE = 5, V_CONVERT = 0 };
        error1 err1;
        error2 err2;
        error1  *ptr_error1 = &err1;
        error2  *ptr_error2 = &err2;
        cout<<"ðàçíîñòü:"<<*ptr_error1-*ptr_error2<<endl;
        
 
 
    cout << "3)" << endl;
 
    struct Student
    {
        char *Name;
        int Age;
        bool Sex;
        float Ball;
    };
    Student st;
    Student *ptr_Student = &st;
    st.Name="Ìàêñèì"; st.Age=18; st.Sex=1; st.Ball=4;
    cout << "Èìÿ =" << ptr_Student->Name << endl;
    cout << "Âîçðàñò =" << ptr_Student->Age << endl;
    cout << "Ïîë =" << ptr_Student->Sex << endl;
    cout << "Áàëë =" << ptr_Student->Ball << endl;
    
    cout<<"4)"<<endl;
    var_int=123; 
    var_float=1.9;
    var_char='3';
    var_wchar_t='f';
    cout<<typeid(*ptr_float).name() << " - " << (*ptr_float) << " -> " << "int" << " - " << (int)*ptr_float << endl;
    cout<<typeid(*ptr_char).name() << " - " << (*ptr_char) << " -> " << "int" << " - " << (int)*ptr_char << endl;
    cout<<typeid(*ptr_wchar_t).name() << " - " << (*ptr_wchar_t) << " -> " << "int" << " - " << *(int*)ptr_wchar_t << endl;
    cout<<typeid(*ptr_int).name() << " - " << (*ptr_int) << " -> " << "var_wchar_t" << " - " << *(wchar_t*)ptr_int <<endl;
    
    cout<<"5)"<<endl;
     int counter;
     const int k=16;
    cout << "obrabotka massiva" << endl;
     float a1[k] = { -5, -12, -12, 9, 10, 0, -9,-12, -1, 23, 65, 64, 11, 43, 39, -15 }; 
     cout <<"indeks" << "\t\t" << "element massiva" << endl; 
     for ( counter = 0; counter < k; counter++) 
        {
        cout << "a1[" << counter << "]" << "\t\t" << *(a1+counter) << endl;
        }
        
    cout<<"6)"<<endl;
    int i,j;
 const int n=3;
 const int m=4;
 int **a2;
 a2=new int *[n];
  for(i=0; i<n; i++)
   {a2[i]=new int[m];}
   
 
for (i=0;i<n;i++)
 {
    for( j=0;j<m;j++)
    { 
      a2[i][j]=(i-j);
    }
}
    
for (i=0;i<n;i++)
 {
    for(int j=0;j<m;j++)
    { 
      cout<<"\t"<<a2[i][j];
    }
    cout<<endl;
    }
    
        int col=0;
        for(i=0; i<n; i++)
        {
             for(j=0; j<m; j++)
             {
               if (a2[i][j]>1)
                {
                col++;
                
               }
          
             }
         break;}
     if (col>0)
    
     cout<<"íîìåð ñòðîêè:"<<(i+1);
    
    else cout<<"òàêîé ñòðîêè íåò"<<endl;
        cout<<endl;
        
   for(i=0; i<n; i++)
   { 
       delete[]a2[i];
   }
   delete[]
   a2;
   
   cout<<"7)"<<endl;
   massiv(a1,k);
   
  cout<<"8)"<<endl;
     
    func(example,a1);
  
   cout<<"9)"<<endl;
   void *ptr_void_int=ptr_int;
   void *ptr_void_char=ptr_char;
   void *ptr_void_wchar_t=ptr_wchar_t;
   void *ptr_void_bool=ptr_bool;
   void *ptr_void_float=ptr_float;
   void *ptr_void_double=ptr_double;
   
   cout<<"çíà÷åíèå îáúåêòà öåëîãî òèïà="<<*(int*)ptr_void_int<<endl;
   cout<<"çíà÷åíèå îáúåêòà ñèìâîëüíîãî òèïà="<<*(char*)ptr_void_char<<endl;
   cout<<"çíà÷åíèå îáúåêòà ðàñøèðåííîãî ñèìâîëüíîãî òèïà="<<*(wchar_t*)ptr_void_wchar_t<<endl;
   cout<<"çíà÷åíèå îáúåêòà ëîãè÷åñêîãî òèïà="<<*(bool*)ptr_void_bool<<endl;
   cout<<"çíà÷åíèå îáúåêòà âåùåñòâåííîãî òèïà="<<*(float*)ptr_void_float<<endl;
   cout<<"çíà÷åíèå îáúåêòà âåùåñòâåííîãî òèïà ñ äâîéíîé òî÷íîñòüþ="<<*(double*)ptr_void_double<<endl;      
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.12.2016, 21:00
Ответы с готовыми решениями:

Найти ошибки в коде и исправить эти ошибки (Наследование)
Вот в общем 3 файла, изучаю наследование на примере односвязного и двусвязного списков: list.h...

Найти ошибки в коде и исправить эти ошибки
Есть у меня вот такой код: #include &lt;iostream&gt; using namespace std; class A{ private:...

Найти ошибки в коде и исправить эти ошибки - C++
Судя по вываливающейся ошибки, идет двойное освобождение памяти. У самого не получается отловить...

GTX450 - на мониторе незначительные горизонтальные полосы
сейчас включил компьютер и обнаружил на мониторе незначительные горизонтальные полосы реально ли...

3
11 / 11 / 6
Регистрация: 13.11.2016
Сообщений: 57
05.12.2016, 21:29 2
Самое простое:

C++
1
2
3
4
5
6
7
struct Student
{
    const char *Name;
    int Age;
    bool Sex;
    float Ball;
};
Это если Вас устраивает, что поле Name будет неизменяемым. Иначе:

C++
1
2
st.Name = new char[13];
strcpy(st.Name, "ГЊГ*ГЄГ±ГЁГ¬");
Для этого придется добавить #include <string.h>, и еще нужно будет проследить за освобождением памяти. Хотя можно попробовать использовать умные указатели.
1
1 / 9 / 0
Регистрация: 21.11.2015
Сообщений: 28
07.12.2016, 14:46  [ТС] 3
Спасибо
0
nd2
3404 / 2785 / 1251
Регистрация: 29.01.2016
Сообщений: 9,423
07.12.2016, 17:44 4
Цитата Сообщение от metropolit76 Посмотреть сообщение
wchar_t var_wchar_t='B';
C++
1
wchar_t var_wchar_t = L'B';
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.12.2016, 17:44

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Ошибки при компиляции - исправить ошибки в коде
Помогите исправить ошибки , не понимаю в чем может быть причина ... #include &lt;conio.h&gt;...

C++ исправить ошибки
Помогите исправит ошибки=) #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include...

Исправить ошибки
Добрый день. Помогите исправить ошибки в задачах. Спасибо). program exp2; const m=5; n=3;...

Исправить ошибки.
Не получается скомпилировать программу. Пожалуйста, укажите ошибки в программе и как их исправить....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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