如何在C中使用printf打印unsigned long int?

可能重复:
如何在C中打印“unsigned long”?

我有这样的号码……

int unsigned long number = 600851475143; 

我试图用printf()打印它。 每次我尝试,我都会收到编译器的警告。

我已经尝试了%uld%ld和谷歌搜索似乎没有找到答案。

我正在学习C,但以前不必使用long int ,所以我不确定我应该使用什么。

我追逐的指示符是什么?

我建议使用标准顺序(即unsigned long int)。 %lu是您正在寻找的格式标签。

 printf("%lu", 5ul); 
 int unsigned long number = 600851475143LU; printf( "%lu", number ); 

打印600851475143