Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/40: Рейтинг темы: голосов - 40, средняя оценка - 4.68
0 / 0 / 0
Регистрация: 10.05.2014
Сообщений: 18
1

Error C2374: 'i' : redefinition; multiple initialization

12.06.2014, 15:46. Показов 7255. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
помогите, пожалуйста, исправить ошибку error C2374: 'i' : redefinition; multiple initialization

вот как выглядит задание
Определить массив A[m][n] (m и n константы), заполнить его случайными числами и выполнить следующие вычисления. Результаты выполнения задания выдать на экран и в файл.
1. Сумму элементов массива с нечетными номерами.
2. Сумму элементов массива, расположенных между первым и последним отрицательными элементами.
3. Сжать массив, удалив из него все элементы, модуль которых не превышает 1. Освободившиеся элементы массива заполнить нулями.
http://codepad.org/jR6Q6DCj если выполнять через сайт то программа работает
если через с++ на компьютере то появляются вот такие ошибки:


--------------------Configuration: Kurs - Win32 Debug--------------------
Compiling...
Kurs.cpp
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(47) : error C2374: 'i' : redefinition; multiple initialization
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(28) : see declaration of 'i'
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(56) : error C2374: 'i' : redefinition; multiple initialization
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(28) : see declaration of 'i'
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(66) : error C2374: 'i' : redefinition; multiple initialization
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(28) : see declaration of 'i'
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(77) : error C2374: 'i' : redefinition; multiple initialization
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(28) : see declaration of 'i'
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(90) : error C2374: 'i' : redefinition; multiple initialization
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(28) : see declaration of 'i'
C:\Documents and Settings\Администратор\Рабочий стол\Kurs c\Kurs\Kurs.cpp(111) : warning C4508: 'main' : function should return a value; 'void' return type assumed
Error executing cl.exe.
Kurs.obj - 5 error(s), 1 warning(s)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.06.2014, 15:46
Ответы с готовыми решениями:

Redefinition; multiple initialization C++ Ошибки
Подскажите, как правильно вызывать функцию несколько раз? Без использования библиотеки, все...

Error X3003: redefinition error
Здравствуйте! Доброго времени суток всем! Помогите пожалуйста решить проблему. Работаю в Visual...

Error C2371 'int8_t': redefinition; different basic types
Всем доброе утро!:) Такая вот беда - Error C2371 'int8_t': redefinition; different basic types....

Ошибка error: redefinition of ‘void DayofYear::set_month()’
Помогите устранить ошибку class5.cpp:25:6: error: redefinition of ‘void DayofYear::set_month()’...

6
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 37
12.06.2014, 15:50 2
Запустила Ваш код. Всё работает.
0
Эксперт С++
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
12.06.2014, 16:00 3
Разгадка в том, что компилятор старенький. По более древнему стандарту C++ переменные, объявленные в цикле for, были видны и за его пределами. В более свежем (и двадцати лет ещё не исполнилось) варианте стандарта такие переменные живут только внутри цикла. Надо переписать программу, чтобы угодить древним извращённым вкусам вашего господина и повелителя компилятора.
1
327 / 230 / 55
Регистрация: 30.05.2014
Сообщений: 682
12.06.2014, 16:30 4
Цитата Сообщение от Nick Alte Посмотреть сообщение
Надо переписать программу, чтобы угодить древним извращённым вкусам
У более-менее свежего VC это переключается опцией /Zc:forScope
0
0 / 0 / 0
Регистрация: 10.05.2014
Сообщений: 18
12.06.2014, 16:43  [ТС] 5
uglyPinokkio, у меня visual studio 6.0
0
327 / 230 / 55
Регистрация: 30.05.2014
Сообщений: 682
12.06.2014, 16:51 6
Лучший ответ Сообщение было отмечено mikhailkarmanov как решение

Решение

Цитата Сообщение от mikhailkarmanov Посмотреть сообщение
у меня visual studio 6.0
Тогда только переписывать - переменные цикла объявить до первого цикла, из всех циклов убрать объявления.
C++
1
2
3
4
5
6
7
8
9
int i=0;
int j=0;
 
    for (i = 0; i < n; i++)
        for (j = 0; j < m; j++)
            if (rand() % 2)
                arr[i][j] = rand() % 6;
            else
                arr[i][j] = -(rand() % 6);
А компилятор лучше бы поменять
0
0 / 0 / 0
Регистрация: 10.05.2014
Сообщений: 18
12.06.2014, 18:05  [ТС] 7
uglyPinokkio, в институте учат на 6.0
0
12.06.2014, 18:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.06.2014, 18:05
Помогаю со студенческими работами здесь

Ошибка: error C2360: initialization of 'mat_C' is skipped by 'case' label
Выдаёт такие ошибки: 1&gt;c:\users\данила\documents\visual studio...

Linked List: error C2360: initialization of 'vp' is skipped by 'case' label
Программа выдает ошибку . но я не понял в чем проблема . можете помочь исправить ? class Us {...

Error A2005: symbol redefinition
Здравствуйте! У меня возникла проблема. У меня есть .dll, и .asm который запускает этот .dll (...

error C2371: 'printd': redefinition;different basic types.
Здравствуйте. В программе выскакивает ошибка error C2371: 'printd': redefinition;different basic...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru