#include
int main()
{
cout<<"Mój pierwszy program";
}
(Kod prosto z Komputer Świat EKSPERT 5/2003 (6)) Który z łatwością kompiluje Dev-C++i CodeBlocks a Visual C++ wyrzuca mi następujący błąd:
------ Build started: Project: hjg, Configuration: Debug Win32 ------
Compiling...
hjg.cpp
d:\dokumenty\visual studio 2005\projects\hjg\hjg\hjg.cpp(7) : fatal error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "stdafx.h"' to your source?
Build log was saved at "file://d:\Dokumenty\Visual Studio 2005\Projects\hjg\hjg\Debug\BuildLog.htm"
hjg - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Dlaczego? Może jakiś błąd popełniam przy wyborze projektu?
#include
int main()
{
cout<<"Mój pierwszy program";
}
------ Build started: Project: hjg, Configuration: Debug Win32 ------
Compiling...
hjg.cpp
d:\dokumenty\visual studio 2005\projects\hjg\hjg\hjg.cpp(7) : fatal error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "stdafx.h"' to your source?
Build log was saved at "file://d:\Dokumenty\Visual Studio 2005\Projects\hjg\hjg\Debug\BuildLog.htm"
hjg - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Spójrz na informację kompilatora. Did you forget to add ‘#include “stdafx.h”’ to your source? dodaj
#include
Po prostu poprosił o dodanie tego pliku nagłówkowego. Ja sam programista nie jestem, choć uczę sie trochę C++, ale takie komunikaty juz trochę sam powinieneś rozkmniniać Ale spoko, początkujący zawsze ma jakieś problemy, ja też Dodaj od razu przed ostatnią klamrą
system("pause");
bo pewnie zaraz po skompilowaniu zniknie Ci okienko i nie zdążysz nic zobaczyć
“rozkmniniać” to potrafię ale ja nie chce obchodzić problemu ale go rozwiązać albo ten kompilator to skompiluje albo na śmierci z takim kompilatorem. Nie potrafi sobie poradzić bez jakiegoś nie wiadomo po co komu nagłówka, to co ja zrobię przy bardziej skomplikowanych programach?!
przy tworzeniu nowego projektu po prostu odznacz opcję Precompiled header w Additional options
albo
w widoku Solution explorer , prawym przyciskiem na pogrubionej nazwie projektu Properties , następnie Configuration Properties -> C/C++ -> Precompiled header i obok pola Create/Use Precompiled Header ustaw opcję Not Using Precompiled Header
instrukcja system(“pause”); jest niepotrzebna w Visual C++ 2005 EE ponieważ program dorzuca tę instrukcję podczas użycia skrótu Ctrl+F5 albo Debug->Start Without Debugging
Zatem rozwiązaniem Twojego problemu jest dodanie pliku nagłówkowego. Jeśli nie potrafisz tego zrobić sam, to nawet nie masz co myśleć o bardziej skomplikowanych programach
Bo jeszcze nikt nie zmusił kompilatora, żeby działał niezgodnie z zasadami języka
Jeśli nie chcesz używać plików nagłówkowych przesiądź się na języki, które ich nie wymagają, np. Brainfuck lub White Space.