Rumah > pembangunan bahagian belakang > C++ > Mengapa Saya Mendapat Ralat Penyusunan Apabila Menggunakan '%u64' dalam Printf?

Mengapa Saya Mendapat Ralat Penyusunan Apabila Menggunakan '%u64' dalam Printf?

Barbara Streisand
Lepaskan: 2024-11-14 18:07:01
asal
610 orang telah melayarinya

Why Am I Getting Compilation Errors When Using

Memahami "%u64" dalam "Printf" dan Menyelesaikan Isu Penyusunan

Apabila cuba mencetak integer tak bertanda 64-bit menggunakan "printf " dengan penentu format "%u64", sesetengah pengguna menghadapi ralat kompilasi. Ralat ini berpunca daripada fakta bahawa penentu format ini tidak ditakrifkan dalam pustaka C standard secara lalai.

Untuk menyelesaikan isu ini, adalah perlu untuk mendayakan penentu format ini secara eksplisit dengan mentakrifkan makro "__STDC_FORMAT_MACROS" sebelum memasukkan pengepala "inttypes.h". Berikut ialah contoh cara untuk melakukan ini:

#define __STDC_FORMAT_MACROS
#include <inttypes.h>

// Rest of your code...

printf("test uint64_t : %" PRIu64 "\n", ui64);
Salin selepas log masuk

Selepas menambah baris ini pada bahagian atas kod anda, pengkompil akan mengenali penentu format "%u64" dan menjana kod yang betul untuk mencetak 64- bit unsigned integer tanpa sebarang ralat. Ini kerana makro "__STDC_FORMAT_MACROS" memastikan bahawa makro format, termasuk "%u64", disertakan dalam pustaka standard C.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat Penyusunan Apabila Menggunakan '%u64' dalam Printf?. 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