收录日期:2020/12/05 04:11:26 时间:2015-01-08 03:58:08 标签:c,printf

Possible Duplicate:
How to printf “unsigned long” in C?

I have my number like so...

int unsigned long number = 600851475143;

I am trying to print it with printf(). Every time I try, I get a warning by the compiler.

I've tried %uld, %ld and Googling hasn't seemed to find me the answer.

I'm learning C, but have not had to use a long int before, so I'm not sure what I should be using.

What is the specifier I am chasing?

I recommend using standard order (i.e. unsigned long int). %lu is the format tag you're looking for.

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

prints 600851475143