Rumah > pembangunan bahagian belakang > C++ > Mengapa saya mendapat 'Ralat LNK2019 simbol luar _utama yang tidak dapat diselesaikan' dalam aplikasi C saya?

Mengapa saya mendapat 'Ralat LNK2019 simbol luar _utama yang tidak dapat diselesaikan' dalam aplikasi C saya?

Susan Sarandon
Lepaskan: 2024-11-22 09:00:12
asal
332 orang telah melayarinya

Why am I getting the

Ralat: Menyelesaikan Simbol Luaran dalam Aplikasi C

Masalah:

Apabila membina aplikasi C, anda mungkin menghadapi ralat berikut:

Error LNK2019 unresolved external symbol _main referenced in function "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ)
Salin selepas log masuk

Punca:

Ralat ini biasanya timbul apabila perkara berikut syarat tidak dipenuhi:

  • Fungsi titik masuk projek main() tidak ditakrifkan atau tidak boleh diakses daripada modul utama.
  • Penghubung tidak dapat mengesan definisi main() dalam pustaka yang ditentukan.

Penyelesaian:

Untuk menyelesaikan isu ini, ikuti ini langkah:

1. Pastikan Kewujudan Fungsi main():

Sahkan bahawa projek anda termasuk fungsi yang dipanggil main() dalam kod sumber. Fungsi ini berfungsi sebagai titik masuk untuk program dan mesti ditakrifkan seperti berikut:

int main(int argc, char** argv)
{
    // Your program logic goes here
    return 0;
}
Salin selepas log masuk

2. Tetapan Pemaut:

Semak tetapan pemaut projek anda untuk memastikan fungsi main() boleh diakses daripada modul utama. Dalam Visual Studio, pergi ke:

  • Project Properties
  • Linker
  • System
  • Di bawah Subsistem, pilih Tingkap

3. Sahkan Kemasukan Perpustakaan:

Sahkan bahawa pustaka yang mengandungi definisi main() disertakan dalam tetapan pemaut projek. Ini boleh didapati dalam:

  • Sifat Projek
  • Penyambung
  • Input
  • Tambahan Kebergantungan

Contoh Projek:

#include "windows.h"

int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hprevinstance, LPSTR lpcmdline, int ncmdshow)
{
    MessageBox(NULL, _T("Hello, world!"), _T("My Application"), MB_OK);

    return 0;
}
Salin selepas log masuk

Nota: Dalam contoh ini, main() diisytiharkan menggunakan makro WINAPI kerana WinMain( ) fungsi ialah titik masuk untuk aplikasi Windows.

Atas ialah kandungan terperinci Mengapa saya mendapat 'Ralat LNK2019 simbol luar _utama yang tidak dapat diselesaikan' dalam aplikasi C saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan