Rumah > pembangunan bahagian belakang > C++ > Mengapakah saya mendapat Simbol Luaran Tidak Selesai __imp__fprintf dan __imp____iob_func dalam Projek SDL2 Visual Studio 2015 saya?

Mengapakah saya mendapat Simbol Luaran Tidak Selesai __imp__fprintf dan __imp____iob_func dalam Projek SDL2 Visual Studio 2015 saya?

Susan Sarandon
Lepaskan: 2024-11-28 09:33:10
asal
227 orang telah melayarinya

Why am I getting Unresolved External Symbols __imp__fprintf and __imp____iob_func in my SDL2 Visual Studio 2015 Project?

Simbol Luaran Tidak Selesai __imp__fprintf dan __imp____iob_func dalam SDL2

Apabila menyusun projek SDL2 dalam Visual Studio 2015, pembangun mungkin menghadapi simbol luaran yang tidak dapat diselesaikan __fprint danimp __imp____iob_func.

Isu asas berpunca daripada fakta bahawa Visual Studio 2015 mentakrifkan stdin, stderr dan stdout secara berbeza daripada versi sebelumnya. Dalam keluaran Visual Studio yang lebih lama, ini ditakrifkan sebagai makro yang menunjuk kepada tatasusunan yang mengandungi tiga aliran IO standard. Walau bagaimanapun, dalam Visual Studio 2015, ia ditakrifkan menggunakan __acrt_iob_func().

Akibatnya, kod yang disusun dengan versi Visual Studio sebelumnya yang bergantung pada takrifan lama stdin, stderr dan stdout akan menemui rujukan yang tidak ditentukan. kepada __iob_func() apabila memaut dengan perpustakaan (.lib) yang disusun dengan Visual Studio 2015.

Untuk menyelesaikan isu ini, satu penyelesaian ialah dengan mentakrifkan __iob_func() secara manual sebagai tatasusunan yang mengandungi {stdin, stdout, *stderr}. Ini memastikan bahawa kod tersebut mempunyai rujukan yang diperlukan kepada __iob_func().

Selain itu, sebarang kod yang menggunakan fungsi stdio (cth., scanf, printf) juga mungkin menghadapi simbol luaran yang tidak dapat diselesaikan. Untuk menangani perkara ini, pembangun boleh menambahkan legacy_stdio_definitions.lib pada pilihan pemaut mereka. Pustaka ini menyediakan takrifan untuk fungsi stdio yang tiada.

Atas ialah kandungan terperinci Mengapakah saya mendapat Simbol Luaran Tidak Selesai __imp__fprintf dan __imp____iob_func dalam Projek SDL2 Visual Studio 2015 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