Visual Studio C++ hiba kód futtatásnál
2014-03-28T15:19:48+01:00
2014-03-30T17:59:21+02:00
2022-07-22T22:02:37+02:00
  • Úgy tűnik, hogy a VS program azt sugallja neked, hogy négyféle lehetőség van, de a valóság az, hogy csak kettő (legalábbis, ha maradunk a Win32 natív bináris program, valódi C++ nyelv (tehát nem CLR, nem C#, nem Visual Basic) keretek között): GUI-alkalmazás, amiben WinMain van, vagy CLI-alkalmazás, amiben main van. A tiéd az utóbbi típusba tartozik.
    Mutasd a teljes hozzászólást!
  • Így csináltam:

    New Project - Visual C++ - Win32 Console Application - Application Settings - (App type)Windows application - (Additional Settings) Empty Project

    Így nem jó, de ha a típusnál is console app-ot választok, akkor működik minden. Biztos, hogy nem a függvényekkel kell itt trükközni. Lehet ezek is megoldják a dolgot, de a könyvben nem így csinálják és netes tutorialokban sem.

    Megtudnátok mondani, mi a különbség az Application Type résznél a Windows application és a Console application között? Csak mert ugye mind a kettő a Win32 Console Application-ben van benne. 

    Én windowsra akarok írni, akkor nem a windows app-ot kéne választani?
    Mutasd a teljes hozzászólást!
  • Az

    int main (void)
    kifejezés C++-ban egyenlő

    int main ()
    -al. Ezért inkább az utóbbi javasolt. C-ben ott (void)-oznak.
    Mutasd a teljes hozzászólást!
  • válasz egyet:

    int main (void) int main (int argc, char *argv[])
    Mutasd a teljes hozzászólást!
  • Nem a Console Application-t választottad, bár lehet, ohgy azt szeretted volna :)
    Mutasd a teljes hozzászólást!
  • Helló

    Most kezdtem el programozással foglalkozni és a Visual Studio Professional 2013-at választottam hozzá. C++ nyelvet kezdtem tanulni.

    Fontos megemlítenem, hogy teljesen kezdő vagyok mind a szoftver használatában, mind a nyelvben!

    Már a legelső alkalommal problémába futottam és ebben szeretnék segítséget kérni.

    Követve a könyv utasításait amiből tanulok, létrehoztam egy új projektet amihez C++ Win32 Console Aplication-t választottam (több netes videóban is ezt láttam), hogy megcsináljam a Hello World!-öt.

    Begépeltem a kódot, ami a könyvben volt:

    #include <iostream> int main() { std::cout <<"Hello World!\n"; return 0; }

    Lefuttattam, de két hibaüzenetet kaptam:

    Error 1 error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup E:\Program\Visual Studio Professional 2013\x Projects\Tutorials\Hello World\Hello World\Hello World\MSVCRTD.lib(crtexew.obj)

    Error 2 error LNK1120: 1 unresolved externals E:\Program\Visual Studio Professional 2013\x Projects\Tutorials\Hello World\Hello World\Debug\Hello World.exe

    Utána átírtam a kódot a youtube egy videója alapján, ahol kifejezetten a VS-ban csinálják a Hello world-őt (a könyv nem ezt használja, de írják, hogy mással is lehet csinálni).

    #include <iostream> using namespace std; int main() { std::cout <<"Hello World!"> << endl; return 0; }

    Így is pont ugyanazokat a hibákat kapom. Szerintem nem magával a kóddal van a probléma. Rákerestem neten a hibákra, de még annyira sem értek az egészhez, hogy ez segítsen :S Gyanítottam, hogy azzal van a gond, hogy windows alkalmazásként indítottam, így az egészet újraírtam Empty Project-ként és rendesen működik, hiba nélkül!

    Ettől függetlenül szeretném tudni, hogy miért nem volt jó és hogy lehetne elhárítani a hibát. Habár még nem értek hozzá, de nyilván nem véletlenül olvastam több helyen is, hogy win console apllication-ként írjak és én is windows alkalmazásokkal szeretnék a későbbiekben foglalkozni. Légyszíves nagyon közérthetően írjátok le mert nagyon noob vagyok még mindenhez.
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd