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

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

Войти
Регистрация
Восстановить пароль
 
mad_rabbit
Сообщений: n/a
#1

Ошибка компиляции - C++

04.11.2010, 20:43. Просмотров 438. Ответов 5
Метки нет (Все метки)

При компиляции следующего кода возникает ошибка:
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
#include <iostream>
using namespace std;
 
int main()
{
    int m;
    int n;      //n*m
    cout << "Введите размер матрицы: ";
    cin >> n >> m;
    
    int *mas = new int[n*m];
    
    cout << "Введите матрицу:\n";
    int i,j;
    for (i=0; i<n; i++)
    {
        for (j=0; j<m; j++)
        {
            cin >> mas[i][j];
        }
    }
    
    int tmp, norm;
    for (i=0; i<n; i++)
    {
        tmp = 0;
        for (j=0; i<m; j++)
        {
            tmp += mas[i][j];
        }
        if (tmp>norm) norm = tmp;
    }
    
    cout << "Норма матрицы: " << norm;
    return 0;
}
Ошибка:
g++ -Wall -o "dd" "dd.cpp" (в каталоге: /home/serg)
dd.cpp: In function ‘int main()’:
dd.cpp:19: error: invalid types ‘int[int]’ for array subscript
dd.cpp:29: error: invalid types ‘int[int]’ for array subscript
Сборка завершилась с ошибкой.
Подскажите что не так в этом коде?
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2010, 20:43
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка компиляции (C++):

Ошибка при компиляции. Где ошибка? (Работа с классом) - C++
Уважаемые форумчане! При компиляции проекта возникает ошибка &quot; undefined reference to `MeterNZiF::MeterNZiF()' &quot; на 7 строку приложения. ...

При компиляции ошибка. Ошибка c++ C2678 - C++
Ошибка c++ C2678 #include &lt;windows.h&gt; #include &lt;string&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;fstream&gt; #include...

Ошибка пр компиляции - C++
cin &gt;&gt; worknumber; int masivv = {125,123}; Dev-C++ выдаёт такую ошибку variable-sized object 'masivv' may not be initialized

ошибка компиляции - C++
имеем вот такую вещь: for(const AuraEffect* aurEff : m_effects) delete aurEff; подчеркивает красным : и ) при...

Ошибка компиляции - C++
Добрый день. Поискал я похожие темы, ошибки которых были близки к моим, но не совсем то. Комментарии в Defeni проставлены вроде бы верно. ...

Ошибка компиляции - C++
У друга проект не запускается (он работает на 10 студии), у меня в 12 такой же набор привел к успеху. Ошибки не пойму. Вот код(извиняюсь...

5
KuKu
1558 / 1036 / 78
Регистрация: 17.04.2009
Сообщений: 2,987
04.11.2010, 20:46 #2
Цитата Сообщение от mad_rabbit Посмотреть сообщение
cin >> mas[i][j];
вы выделяли память на массив, а не на массив массивов.
1
mad_rabbit
Сообщений: n/a
04.11.2010, 21:28 #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
#include <iostream>
using namespace std;
 
int main()
{
    int n,m;        //n*m
    int i,j;        //счетчики
    cout << "Введите размер матрицы: ";
    cin >> n >> m;
    
    int **mas = new int *[n];
    for (i=0; i<n; i++)
    {
        mas[i] = new int[m];
    }
    
    cout << "Введите матрицу:\n";
    for (i=0; i<n; i++)
    {
        for (j=0; j<m; j++)
        {
            cin >> mas[i][j];
        }
    }
    
    int tmp, norm;
    for (i=0; i<n; i++)
    {
        tmp = 0;
        for (j=0; i<m; j++)
        {
            tmp += mas[i][j];
        }
        if (tmp>norm) norm = tmp;
    }
    
    cout << "Норма матрицы: " << norm;
    return 0;
}
KuKu
1558 / 1036 / 78
Регистрация: 17.04.2009
Сообщений: 2,987
04.11.2010, 21:31 #4
C++
1
 for (j=0; i<m; j++)
точно i ?
0
ForEveR
В астрале
Эксперт С++
7979 / 4738 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
04.11.2010, 21:42 #5
А мне так больше нра...

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
#include <iostream>
using namespace std;
 
int main()
{
        int m;
        int n;          //n*m
        cout << "Введите размер матрицы: ";
        cin >> n >> m;
        
        int *mas = new int[n*m];
        
        cout << "Введите матрицу:\n";
        int i,j;
        for (i=0; i<n; i++)
        {
                for (j=0; j<m; j++)
                {
                        cin >> mas[i+m*j];
                }
        }
        
        int tmp, norm=0;
        for (i=0; i<n; i++)
        {
                tmp = 0;
                for (j=0; j<m; j++)
                {
                        tmp += mas[i+m*j];
                }
                if (tmp>norm) norm = tmp;
        }
        
        cout << "Норма матрицы: " << norm;
        delete[] mas;
        return 0;
}
0
KuKu
1558 / 1036 / 78
Регистрация: 17.04.2009
Сообщений: 2,987
04.11.2010, 21:44 #6
ForEveR, а так и надо наверное по-хорошему. Тут правда это не очень принципиально.
0
04.11.2010, 21:44
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2010, 21:44
Привет! Вот еще темы с ответами:

Ошибка компиляции - C++
Написал код на тему шаблоны, но появились проблемы с созданием перегруженного оператора, так же не могу создать динамический массив...

Ошибка компиляции - C++
#include &lt;iostream&gt; class X { public: static int a; }; void main() {

Ошибка компиляции - C++
Исходник: // ConsoleApplication4.cpp: определяет точку входа для консольного приложения. // #include &lt;windows.h&gt; #include...

ошибка компиляции - C++
error: lvalue required as left operand of assignment for (int i=0; i&lt;STRANDS_AMOUNT;i++) { int sum = 0; int k = 0; ...


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

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

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