[ Igor_022 @ 31.01.2007. 18:35 ] @
Well,
Imam problem. Kada pokusam da izvrsim sledeci kod, Visual C++ 6 mi vrati gresku:
"fatal error C1010: unexpected end of file while looking for precompiled header directive".
Kod je uzet iz nekog primera i trebao bi da radi:

Code:

#include <iostream>
#include <fstream> 
using namespace std;

int main()
{
    int broj;
    ofstream dat;

    cout << "Upisi neki broj: " << endl;
    cin >> broj;
    dat.open("proba.txt");
    dat << broj;
    dat.close();
    cout << "Broj je upisan u datoteku" << endl;
   
    return 0;

Gde je problem?
[ X Files @ 31.01.2007. 18:50 ] @
Pretpostavljam da nije problem do samog koda, vec do neceg drugog.

Google-ovanjem pomenute poruke dobije se dosta materijala, npr:
http://www.msoe.edu/eecs/cese/...s/cppbuild/msvcmfc/mfc_err.htm

PokuĊĦaj ovo:
Project > Settings >C/C++ >Category >Precompiled headers > not using precompiled headers.
[ NrmMyth @ 31.01.2007. 19:54 ] @
Precompiled headers su funkcionalnost VC++ (ne znam dali ih jos tko podrzaje).
Radi se o tome da postoji jedan header koji se ukljucuje u _sve_fajlove_ unutar projekta i koji se "predkompilira". Odnosno sve definicije unutar njega se kompajliraju sam jednom i zatim linkaju s ostalim.

>>>> stdafx.h (precompiled header) - nije nuzno da se ovako zove, ali je tako standardno
int func( int x ) { return x; }; // definicija

>>>> a.cpp
#include "stdfax.h"

>>>> b.cpp
#include "stdfax.h"


S koristenjem "precompiled headers" switcha kompajler nece morati da dva puta radi objektni kod za int func( int ).
...znamo da je include direktiva samo "kopiranje" koda.
[ absBeg @ 01.02.2007. 15:06 ] @
>
ne znam jel ti kod bas 10% ovakav kao na ekranu, ali morat ces namespace
dio prebaciti u novi red i onda sve radi bez ikakvih gresaka ;)
[ SuPeR_MaSteR @ 03.02.2007. 00:30 ] @
Citat:
absBeg: >
ne znam jel ti kod bas 10% ovakav kao na ekranu, ali morat ces namespace
dio prebaciti u novi red i onda sve radi bez ikakvih gresaka ;)

Wtf? :) C++ ignorise razmake
[ absBeg @ 03.02.2007. 09:57 ] @
istina je. ali dio include ne zavrsava sa tocka-zarez, pa meni VS 2005
uvijek prijavi gresku ako je namespace dio u istom redu kao i #include.
[ SuPeR_MaSteR @ 03.02.2007. 15:15 ] @
Aha na to mislis, da, jeste tako. Po konvenciji nista se i ne pise u istom redu sa #include direktivom. Samo u gornjem primeru using i jeste u razdvojenom redu..
[ DjoleReject @ 03.02.2007. 18:20 ] @
Sta si ti procitao, covece? Post nije editovan, a svaka komanda je u novom redu...

Inace greska se javlja zato sto je kompajler namesten da inkluduje neke hedere automatski, sto treba da se iskljuci, pa je sve OK.
[ absBeg @ 04.02.2007. 08:23 ] @
>
ovu temu pratim preko email-a i kod mene je namespace dio u istom redu
sa #include. Inace, gornji program mi radi bez ikakve greske sa
defaultnim postavkama VS 2005, pa mi nije bilo jasno o kakvim greskama
pricate. ;)
[ DjoleReject @ 04.02.2007. 16:02 ] @
A, mail je uzrok nesporazuma. Sori.
Ja ga nisam ni kompajlirao, nego gledam onako odoka - nema sta tu da ne radi. To mora biti problem ukljucivanja hedera, po defaultu se neke gluposti inkluduju. Samo ne znam kako je to covek odradio, bez namere.