Saya menulis kode uji printf uint64_t yang sangat sederhana:
#include <inttypes.h>
#include <stdio.h>
int main()
{
uint64_t ui64 = 90;
printf("test uint64_t : %" PRIu64 "\n", ui64);
return 0;
}
Saya menggunakan ubuntu 11.10 (64 bit) dan gcc versi 4.6.1 untuk mengkompilasinya, tetapi gagal:
main.cpp: In function ‘int main()’:
main.cpp:9:30: error: expected ‘)’ before ‘PRIu64’
main.cpp:9:47: warning: spurious trailing ‘%’ in format [-Wformat]
Sama tanpa kesalahan: stackoverflow.com/questions/9225567/…
—
Ciro Santilli 郝海东 冠状 病 六四 六四 事件 法轮功
Baik dengan gcc atau dentang, itu ide yang baik untuk menentukan
—
Davislor
-std=c11
atau versi standar yang Anda gunakan. Itu menangkap kesalahan ini dan lainnya. Saya juga merekomendasikan -Wall -Wextra -Wpedantic -Wconversion
setidaknya.
main.c
dan mengompilasinya dengan gcc, semua akan berfungsi dengan baik.