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

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

Войти
Регистрация
Восстановить пароль
 
Hammer-On
0 / 0 / 0
Регистрация: 10.11.2012
Сообщений: 40
#1

Как разобраться с ошибками в коде - C++

10.11.2012, 19:42. Просмотров 698. Ответов 8
Метки нет (Все метки)

Помогите пожалуйста разобраться с ошибками в коде


вот код:

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
#include <iostream.h>
#include <string.h>
int main ()
{
struct strc{
int a[100];//номер
char b[100]; // тип автобуса
char c[100]; // пункт назначения
int  d[100]; // время отправления
int  D[100];
int  e[100];// время прибытия
int  E[100];
}bus[100];
int f,i,j,h,m;
cout << "vvedite kol-vo reisov"<<endl;
cin >> f;
for (i=0; i < f; i++)
{
    cout << "vvedite tip avtobusa"<<endl;
    cin >> bus[i].b;
cout << "vvedite punkt naznacheniya"<<endl;
cin >> bus[i].c;
cout << "vvedite vremya otpravleniya(hours(Enter)minutes)"<<endl;
cin >> bus[i].d;
cin >> bus[i].D;
cout << "vvedite vremya pribitiya(hours(Enter)minutes)"<<endl;
cin >> bus[i].e;
cin >> bus[i].E;
}
cout << "vvedite interesyUshee vas vremya pribitiya(hours(Enter)minutes)"<<endl;
cin >> h;
cin >> m;
for (j=0; j < f; j++)
{ 
    if(h > bus[j].e)
    {       
        if(m > bus[j].E)
        {
            cout << bus[j].a << " " << bus[j].b << " " << bus[j].c << " " << bus[j].d << " " << bus[j].D << " " << bus[j].e << " " << bus[j].E;
        }
    }
}
return 0;
}

При компиляции компилятор выдаёт такое:

" D:\111\111.cpp(24) : error C2679: binary '>>' : no operator defined which takes a right-hand operand of type 'int [100]' (or there is no acceptable conversion)
D:\111\111.cpp(25) : error C2679: binary '>>' : no operator defined which takes a right-hand operand of type 'int [100]' (or there is no acceptable conversion)
D:\111\111.cpp(27) : error C2679: binary '>>' : no operator defined which takes a right-hand operand of type 'int [100]' (or there is no acceptable conversion)
D:\111\111.cpp(28) : error C2679: binary '>>' : no operator defined which takes a right-hand operand of type 'int [100]' (or there is no acceptable conversion)
D:\111\111.cpp(35) : error C2446: '>' : no conversion from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
D:\111\111.cpp(35) : error C2040: '>' : 'int' differs in levels of indirection from 'int [100]'
D:\111\111.cpp(37) : error C2446: '>' : no conversion from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
D:\111\111.cpp(37) : error C2040: '>' : 'int' differs in levels of indirection from 'int [100]' "



если понадобится - это решение вот этой задачи задачи:

"В справочной автовокзала хранится расписание движения автобусов.
Для каждого рейса указаны его номер, тип автобуса, пункт назначения, время
отправления и прибытия. Вывести информацию о рейсах, которыми можно
воспользоваться для прибытия в пункт назначения раньше заданного времени."
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2012, 19:42     Как разобраться с ошибками в коде
Посмотрите здесь:

Разобраться с ошибками в коде - C++
подскажите, ошибки в коде есть подчеркиваются &quot;красным&quot; они, препод говорит, что это связано с неуниверсальностью кода код: #include...

Разобраться с ошибками в коде - C++
что я делаю неправильно вот код программы #include &lt;iostream.h&gt; #include &lt;string.h&gt; #include &lt;conio.h&gt; int main () { ...

Разобраться с ошибками - C++
что нужно исправить #include &lt;iostream.h&gt; #include &lt;string.h&gt; #include &lt;conio.h&gt; int main () { struct strc { ...

Разобраться с ошибками в программе - C++
#include &lt;uniostream&gt; ; using namespace std; void main() { char name1, name2, name3;

Разобраться с ошибками в программе - C++
#include &lt;stdio.h&gt; using namespace std; int main(void) { setlocale(LC_ALL,&quot;Russian&quot;); char name1, name2, name3; char pr1,...

Не могу разобраться с ошибками, наследование и шаблоны - C++
Задание: Смоделировать стек на базе статического массива по заданию. Написать основные операции для работы со стеком (push, pop, top,...

Помощь с ошибками в коде программы "Hello world" - C++
Я новичек, так что кривой немного. В общем хотел поставить себе среду Microsoft Visual C++ 6.0, но когда хочу скомпилировать какой-либо...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
BumerangSP
4285 / 1407 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
10.11.2012, 19:51     Как разобраться с ошибками в коде #2
ошибки из-за того, что в struct объявлены массивы:
C++
1
2
3
...
char c[100];
...
а когда к ним идет обращение:
C++
1
2
3
...
cin >> bus[i].c;
...
Тут и ошибка, потому что с - массив, обращаться нужно к его элементам при вводе.
Нужно что-то вроде:
cin >> bus[i].c[1];
Тогда в массиве структур bus в находящейся i-ой ячейке массив "с" в ячейку 1 запишется то, что ввели.
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 19:52     Как разобраться с ошибками в коде #3
Везде одна и та же ошибка, ты же обращаешься к массиву с целочисленными значениями, надо указывать к какому элементу именно обращаешься.Например строка 24 надо так bus[i].d[i]
Hammer-On
0 / 0 / 0
Регистрация: 10.11.2012
Сообщений: 40
10.11.2012, 20:10  [ТС]     Как разобраться с ошибками в коде #4
спасибо, сейчас попробую

Добавлено через 14 минут
http://cs407330.userapi.com/v4073300...vzU_SonfQw.jpg
хД ошибок больше не выбивает, но выполняет код только до 33 строки
как это исправить?
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 20:18     Как разобраться с ошибками в коде #5
Цитата Сообщение от Hammer-On Посмотреть сообщение
хД ошибок больше не выбивает, но выполняет код только до 33 строки
как это исправить?
Подправь свой код и выложи, без ошибок.
Hammer-On
0 / 0 / 0
Регистрация: 10.11.2012
Сообщений: 40
10.11.2012, 20:21  [ТС]     Как разобраться с ошибками в коде #6
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
#include <iostream.h>
#include <string.h>
int main ()
{
struct strc{
int a[100];//номер
char b[100];//тип автобуса
char c[100];//пункт назначения
int  d[100];//время отправления
int  D[100];
int  e[100];//время прибытия
int  E[100];
}bus[100];
int f,i,j,h,m;
cout << "vvedite kol-vo reisov"<<endl;
cin >> f;
for (i=0; i < f; i++)
{
cout << "vvedite tip avtobusa"<<endl;
cin >> bus[i].b[i];
cout << "vvedite punkt naznacheniya"<<endl;
cin >> bus[i].c[i];
cout << "vvedite vremya otpravleniya(hours(Enter)minutes)"<<endl;
cin >> bus[i].d[i];
cin >> bus[i].D[i];
cout << "vvedite vremya pribitiya(hours(Enter)minutes)"<<endl;
cin >> bus[i].e[i];
cin >> bus[i].E[i];
}
cout << "vvedite interesyUshee vas vremya pribitiya(hours(Enter)minutes)"<<endl;
cin >> h;
cin >> m;
for (j=0; j < f; j++)
{ 
    if(h > bus[j].e[j])
    {       
        if(m > bus[j].E[j])
        {
            cout << bus[j].a[j] << " " << bus[j].b[j] << " " << bus[j].c[j] << " " << bus[j].d[j] << " " << bus[j].D[j] << " " << bus[j].e[j] << " " << bus[j].E[j];
        }
    }
}
return 0;
}
вот он
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 20:27     Как разобраться с ошибками в коде #7
И зачем ты везде, исправил ошибку? Там где массив из целых чисел ставишь i, там где символьный не делаешь так.
Hammer-On
0 / 0 / 0
Регистрация: 10.11.2012
Сообщений: 40
10.11.2012, 20:50  [ТС]     Как разобраться с ошибками в коде #8
хорошо, а почему с символьными массивами не нужно делать так, а с целочисленными нужно?

проблема решилась, спасибо)

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
#include <iostream.h>
#include <string.h>
int main ()
{
struct strc{
int a[100];//номер
char b[100];//тип автобуса
char c[100];//пункт назначения
int  d[100];//время отправления
int  D[100];
int  e[100];//время прибытия
int  E[100];
}bus[100];
int f,i,j,h,m;
cout << "vvedite kol-vo reisov"<<endl;
cin >> f;
for (i=0; i < f; i++)
{
cout << "vvedite tip avtobusa"<<endl;
cin >> bus[i].b;
cout << "vvedite punkt naznacheniya"<<endl;
cin >> bus[i].c;
cout << "vvedite vremya otpravleniya(hours(Enter)minutes)"<<endl;
cin >> bus[i].d[i];
cin >> bus[i].D[i];
cout << "vvedite vremya pribitiya(hours(Enter)minutes)"<<endl;
cin >> bus[i].e[i];
cin >> bus[i].E[i];
}
cout << "vvedite interesyUshee vas vremya pribitiya(hours(Enter)minutes)"<<endl;
cin >> h;
cin >> m;
for (j=0; j < f; j++)
{ 
    if(h > bus[j].e[j])
    {       
        if(m > bus[j].E[j])
        {
            cout << bus[j].a[j] << " " << bus[j].b << " " << bus[j].c << " " << bus[j].d[j] << " " << bus[j].D[j] << " " << bus[j].e[j] << " " << bus[j].E[j];
        }
    }
}
return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.11.2012, 21:27     Как разобраться с ошибками в коде
Еще ссылки по теме:

Как разобраться ,что в этом коде за что отвечает? - C++
#include &lt;iostream&gt; #include &lt;ctime&gt; using namespace std; int main () { srand(time(NULL)); unsigned const int n=4,...

Разобраться в коде - C++
Алгоритм сортирует элементы матрицы согласно схеме (см. изображение), в порядке убывания и методом пузырька. Происходит движение: 1) вниз...

Не могу разобраться в коде - C++
Здравствуйте, нашел код на форуме, он выводит файл в hex виде #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;iomanip&gt; #include...

Не могу разобраться в коде - C++
Всем дня доброго.В плюсах я ровным счетом 0.Расшифровать по нормальному не могу.Отрывок из кода описывающего программы шахматы. bool...

ПОМОГИТЕ РАЗОБРАТЬСЯ В КОДЕ - C++
#include &lt;time.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;assert.h&gt; #include &lt;string.h&gt; #include &lt;stdlib.h&gt; using...


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

Или воспользуйтесь поиском по форуму:
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
10.11.2012, 21:27     Как разобраться с ошибками в коде #9
Потому что, когда ты записываешь строку тебя надо несколько символов, а числа хватает одного.Лучше Массив чисел исправь просто на переменные.
Yandex
Объявления
10.11.2012, 21:27     Как разобраться с ошибками в коде
Ответ Создать тему
Опции темы

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