LNK2019 en LNK1120

Ik word momenteel geconfronteerd met een probleem dat is als de onderstaande fout

Error   1   error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup   MSVCRTD.lib assignment

Ik probeer het programma opnieuw uit te voeren, ik volg de stap om hetzelfde te doen als artikelberichten door elke gebruiker. Ik probeer de tekenset te wijzigen om niet in te stellen, nog steeds geen functie beschikbaar. Ik probeer van console te veranderen om te winnen _winmain @ 16 error, en ik verander _main error Ik heb het hele oplossingsbestand opnieuw gemaakt. Ik heb de codering of het .CPP- en .H-bestand niet opnieuw gemaakt in mijn C ++ -programma,

Hoe los ik het op, ik onderzoek al 3 - 4 dagen, maar ik kan nog steeds niet het antwoord krijgen dat ik verwacht. Hopelijk kan dit me helpen om het programma te voltooien. Bedankt en uw hulp zeer op prijs gesteld.

0
toegevoegd de auteur Hans Passant, de bron
¤ Voeg een standaard int main() {...} C ++ opstartfunctie toe. Wijzig indien nodig in de koppelingsinstellingen het invoerpunt in mainCRTStartup (waarmee main wordt aangeroepen). Gebruik geen Microsoft T dingen, het is alleen voor compatibiliteit met Windows 9x. Cheers & hth.,
toegevoegd de auteur Cheers and hth. - Alf, de bron

3 antwoord

Heb je een hoofdfunctie in je programma? Omdat de Windows-runtime-bibliotheek (de MSVCRTD.lib die u noemde) uw hoofdfunctie als het beginpunt zal oproepen. Als u er geen hebt, is er een verbindingsfout.

WinMan is het toegangspunt voor het Win32-programma.

1
toegevoegd
-1 "WinMan is het toegangspunt voor het win32-programma" ← is onjuist. Als u het over het toegangspunt op machine-niveauniveau hebt, het invoerpunt dat wordt aangegeven door de /ENTRY -optie van de linker, dan is dat een functie van ongedocumenteerde handtekening, maar void f() werkt goed. Als u het heeft over de opstartfunctie C of C ++, moet u volgens de ISO-normen voor de talen main zijn.
toegevoegd de auteur Cheers and hth. - Alf, de bron

if it is an windows program:
1.menu-Project->Properties, to open this "Property Pages" window
2.then choose Configuration Properties->C/C++->Preprocessor,and delete "_CONSOLE" in Preprocessor Definitions , add "_WINDOWS".
3.return the first step:Configuration Properties->Linker->System,change it to Windows(/SUBSYSTEM:WINDOWS) in SubSystem

if it it a console program:
1.menu--> Project->Properties, pop out the "Property Pages" window
2.then choose Configuration Properties->C/C++->Preprocessor,and delete "_WINDOWS" int Preprocessor Definitions add "_CONSOLE".
3.return the first step:Configuration Properties->Linker->System,change it to CONSOLE(/SUBSYSTEM:CONSOLE) in SubSystem

0
toegevoegd

U hebt waarschijnlijk een aantal incompatibele instellingen in uw oplossing. Maak in Visual Studio 2010 een nieuw project en selecteer Win32 Consoletoepassing in de sjablonenlijst. Klik op de wizardpagina op Volgende, selecteer Consoletoepassing en Leeg project en vervolgens Voltooien. Maak een nieuw .cpp-bestand en plaats deze code erin

int main ()
{
}

Dit moet compileren en koppelen.

0
toegevoegd