Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12

испортился компилятор посмотрите

16.10.2011, 13:04. Показов 2648. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
// 1.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
 
int main(int argc, char* argv[])
{
    for (int i=1;i<10;i++)
    {}
int i=1;
 
    return 0;
}
выводит ошибку
C:\Program Files\Microsoft Visual Studio\MyProjects\1\1.cpp(10) : error C2374: 'i' : redefinition; multiple initialization
C:\Program Files\Microsoft Visual Studio\MyProjects\1\1.cpp(8) : see declaration of 'i'

а раньше всё было нормально что делать помогите пожалуйста

Добавлено через 7 минут
компилятор mv c++ 6 (MVS 6 обрезаный)
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.10.2011, 13:04
Ответы с готовыми решениями:

испортился файл
здрасте. был php файл превратился в это: &quot;S‘љЦ&lt;wЌЋGД»ї»юЗїсPЮCіOv .c.ц ZЕ&amp;»DSў–Я«…1їЁ—§јЉ+ ...

Ошибка в работе Google Chrome
Уже целый день, через каждые 5 минут выдаёт табличку, как на фото ниже. Запускаю программу CHKDSK она работает и всё равно табличку выдаёт...

Кабель испортился?
Здравствуйте! Вин10. Значок интернете соединения закрыт красным крестиком, типа кабель не воткнут. Кабель воткнут, но огоньки у выхода...

24
16.10.2011, 13:04

Не по теме:

Цитата Сообщение от Van111 Посмотреть сообщение
испортился компилятор
Цитата Сообщение от Van111 Посмотреть сообщение
mv c++ 6 (MVS 6 обрезаный)
срок годности истек:)

2
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
16.10.2011, 13:06  [ТС]
я его недавно переустановил перед этим делал восстановление системы
0
23 / 23 / 11
Регистрация: 26.03.2011
Сообщений: 54
16.10.2011, 13:20
не испортился ничего. два раза объявлять переменную нельзя. иногда можно ошибку прочесть если не сразу понятно
0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
16.10.2011, 14:02  [ТС]
так на дев с++ всё работает и раньше на mvc++ 6 работало а щас перестало
0
Студент
 Аватар для amor1k
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
16.10.2011, 14:08
Все равно попробуйте изменить строку 7 на

C++
1
i=1;
И если не заработает, объявите переменную i в начале main.
1
 Аватар для alkagolik
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
16.10.2011, 14:12
Van111,
C++
1
2
3
4
5
for (int i=1;i<10;i++)// i находится в пространстве имен функции for()
{}
int i=1;// i находится в пространстве имен функции main()
// пространство имен функции for() выделяется из пространства имен функции main() 
// в итоге декларируется два статуса для одного адреса
1
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
16.10.2011, 14:15
А на Dev 4.9.9.2 запустилось оО Странно.

Результат вывода i на экран: 1234567891. По моему он параметр цикла уничтожает после его обхода.

А вобще нельзя такого делать.
0
 Аватар для alkagolik
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
16.10.2011, 14:16
формально ошибки нет, почему нельзя? просто как видно, не каждый компилятор ест.
0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
16.10.2011, 14:17  [ТС]
а на mv c++ 6 намного код лучше компилирует чем dev c++
а то я думаю может на дев перейти
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
16.10.2011, 14:21
Цитата Сообщение от alkagolik Посмотреть сообщение
формально ошибки нет, почему нельзя? просто как видно, не каждый компилятор ест.
Ну например задачу может прийдется показывать на других компьютерах, на которых есть только VS (как обычно и бывает), а там объясняй что у тебя дома все работает, а тут "машина - дура".
0
23 / 23 / 11
Регистрация: 26.03.2011
Сообщений: 54
16.10.2011, 14:27
Цитата Сообщение от MrGluck Посмотреть сообщение
Ну например задачу может прийдется показывать на других компьютерах, на которых есть только VS (как обычно и бывает), а там объясняй что у тебя дома все работает, а тут "машина - дура".
оказывается и на VS тоже работает, проверил. я сначала подумал, что такое реально нельзя делать
0
 Аватар для talis
794 / 546 / 61
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
16.10.2011, 14:29
Эта ошибка в vc6 была очень известна в своё время. В gcc (которым пользуется DevC++) она отсутствует. Поработайте с vc6, вы ещё много интересного о ней узнаете.

Добавлено через 1 минуту
испортился компилятор

Не по теме:

В холодильнике хранили? Если нет - то понятно, в чём дело. :)

1
 Аватар для alkagolik
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
16.10.2011, 14:29
MrGluck, не машина, а реализация работы машины "человеками". кто виноват в том что
есть только VS (как обычно и бывает)
конечно надо учитывать особенности компилятора, никто и не спорит Страуструпп этому прямо учит. Но в том что в большинстве случаев стоит VS... кто-то же ее туда поставил, верно? Отсюда и уровень. Нельзя от компьютерщика скрывать работу компьютера, я за правку конфигов руками ))
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
16.10.2011, 14:30
Цитата Сообщение от MrGluck Посмотреть сообщение
Ну например задачу может прийдется показывать на других компьютерах, на которых есть только VS (как обычно и бывает), а там объясняй что у тебя дома все работает, а тут "машина - дура".
объяснишь не ты первый, не ты последний.
Почему функция копирования строк не принимает два параметра?
0
 Аватар для alkagolik
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
16.10.2011, 14:37
как вам такой фокус?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main(){
 
    for (int i = 0; i < 10; ++i)
    {
 
    }
    int i = 10;
 
    for (int i = 0; i < 3; ++i)
    {
        for (int i /*объявлена но к ней обратиться не получится*/ = 0; i < 3; ++i)
            std::cout << i << ' '<< i << std::endl;
    }
    std::cout << i << ' ' << std::endl;
 
    return 0;
}
1
Заблокирован
16.10.2011, 14:53
Так то понятно - не хочешь проблем, пиши православный (потенциально безопасный) код.
Но все таки интересно, что об этом нюансе говорит стандарт языка?
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
16.10.2011, 15:40
Лучший ответ Сообщение было отмечено как решение

Решение

Оно?
If the for-init-statement is a declaration, the scope of the name(s) declared extends to the end of the for-
statement. [ Example:
int i = 42;
int a[10];
for (int i = 0; i < 10; i++)
a[i] = i;
int j = i; // j = 42
- end example ]


пункт 6.5.3, сдуто с черновика принятого недавно стандарта.
4
Заблокирован
16.10.2011, 17:50
Цитата Сообщение от Van111 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
// 1.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
 
int main(int argc, char* argv[])
{
    for (int i=1;i<10;i++)
    {}
int i=1;
 
    return 0;
}
выводит ошибку
C:\Program Files\Microsoft Visual Studio\MyProjects\1\1.cpp(10) : error C2374: 'i' : redefinition; multiple initialization
C:\Program Files\Microsoft Visual Studio\MyProjects\1\1.cpp(8) : see declaration of 'i'

а раньше всё было нормально что делать помогите пожалуйста

Добавлено через 7 минут
компилятор mv c++ 6 (MVS 6 обрезаный)
Если вы имеет дело с версией MVC++ 6, то переменные, объявленные в цикле, имеют область видимости тот внешний блок, в котором имеется предложение цикла. То есть после выхода из цикла, переменная продолжает "жить". Это естественно не соответствует стандарту С++ 2003, но тем не менее в те времена, когда появилась 6 вресия, стандарт С++ 2003 еще не был полностью реализован в компиляторах.

Поэтому компилятор вам правильно говорит о существовании ошибки, то есть в одной и той же области объявлений он встречает переопределение идентификатора.

Вам следует порльзоваться более современными компиляторами.
0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
16.10.2011, 18:54  [ТС]
а вот ещё одно предположение проблемы у меня после восстановления системы включилась автоматическая обновление ОС (а в неё входили net fraemwork и redistributable) я так думаю что они могли обновился и изменить mv c++ 6 щас она у меня вообще глючить стала.
из за этого могли начаться проблемы????????????????
P.S. я ещё дров на устанавливал стандартных
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.10.2011, 18:54
Помогаю со студенческими работами здесь

Испортился windows
Случился такой случай!... Был у меня установлен windows! где-то через месяц включаю с утра комп! И он включаясь пишет сообщение что-то...

Испортился шрифт :dance:
На днях испортился шрифт, стал тоньше(?) что ли. Как это исправить? Заходил в дополнительные параметры системы =&gt; быстродействие....

DVD-диск испортился?
Два года на полке простоял пользованный DVD с игрой &quot;Civilization IV Beyond The Sword&quot;. Сегодня решил тряхнуть стариной. Установил сперва...

Adobe плеер обновил и он испортился
плеер постоянно предлагал обновление я обновил и на тебе ни видео не показывает ни приложения не открывает, как вернуть хоть прежние...

INternet Explorer примерно через 20 секунд после запуска пишет что прекращена работа
windows 7 x64 стоит IE 9 примерно через 20 секунд после запуска IE пишет что прекращена работа , ошибка. зависает и вырубается. пытался...


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

Или воспользуйтесь поиском по форуму:
20
Закрытая тема Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Киев стоит - украинская песня
zorxor 28.01.2026
wfWdiRqdTxc О Господи, Вечный, Ты . . . Я помоги, Бесконечный. . . Я прошу Ты. . . Я погибаю, спаси. . . Я прошу Тебя Вечный. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru