Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: VS 2008 Express Edition, Странная ошибка.  (Прочитано 7535 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Darw1b
Гость
« : 01-03-2008 21:03 » 

Всем здрасте, Я совсем недавно перешел на С++ с паскаля, поэтому особо не шарю в этом вопросе, но все же, подскажите пожалуйста что значит эта назойливая ошибка и как её устранить?
Код:
#include <stdafx.h>
#include <iostream>
using namespace std;
int main()
{
int chislo,div;
cout<<"Vvedite chislo"<<endl;
cin>>chislo;
div=2;
while (chislo >= div)
{
if (!(chislo % div)) cout <<div<<endl;
div++;
}
return 0;
}
-Элементарнейшая программа...
Код:
1>------ Build started: Project: example, Configuration: Debug Win32 ------
1>Linking...
1>example.obj : error LNK2005: _main already defined in del.obj
1>example.obj : error LNK2005: "int __cdecl main(void)" (?main@@$$HYAHXZ) already defined in del.obj
1>Задача1.obj : error LNK2005: _main already defined in del.obj
1>Задача1.obj : error LNK2005: "int __cdecl main(void)" (?main@@$$HYAHXZ) already defined in del.obj
1>C:\Documents and Settings\Darw\Мои документы\Visual Studio 2008\Projects\example\Debug\example.exe : fatal error LNK1169: one or more multiply defined symbols found
1>Build log was saved at "file://c:\Documents and Settings\Darw\Мои документы\Visual Studio 2008\Projects\example\Debug\BuildLog.htm"
1>example - 5 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
А вот та самая ошибка, при том если начать новый проект, то все работает... Перелопатил кучу литературы и сайтов, но все равно не работает...
P.S И еще подскажите пожалуйста, зачем все-таки надо писать на входе #include <stdafx.h> в книжках про него ниче не пишут.
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #1 : 01-03-2008 21:11 » 

#include <stdafx.h> Это библиотека VC, и естественно про нее в книжках ничего не будет написано. Как правило в студии я создавал пустой консольный проект, тогда ничего лишнего студия не цепляет и все работает как часы.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Darw1b
Гость
« Ответ #2 : 01-03-2008 21:28 » 

Понятно, а все таки для чего эта библиотека, в ней всего одна фраза #pragma once и все... а без нее вообще ничего не запускается. Проблема в том что я тоже создаю консольный проект, без всяких там *.obj и прочего мусора... просто *.cpp но ошибка то появляется, то нет...
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #3 : 01-03-2008 21:34 » 

http://en.wikipedia.org/wiki/Precompiled_header
Цитата
stdafx.h

stdafx.h is a file, generated by Microsoft Visual Studio IDE wizards, that describes both standard system and project specific include files that are used frequently but hardly ever changed.

Compatible compilers (for example, Visual C++ 6.0 and newer) will pre-compile this file to reduce overall compile times. Visual C++ will not compile anything before the #include "stdafx.h" in the source file, unless the compile option /Yu'stdafx.h' is unchecked (by default); it assumes all code in the source up to and including that line is already compiled.

The AFX in stdafx.h stands for Application Framework eXtensions. AFX was the original abbreviation for the Microsoft Foundation Classes (MFC). Optionally, Visual Studio projects may avoid pre-compiled headers, as well as they may specify an alternative name (though stdafx.h is used by default).
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #4 : 02-03-2008 11:16 » 

Darw1b, чуть подробней. А как ты вобще проект создал и откуда код?
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines