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);
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!