2010-10-27 15 views
14

Duplicar posible:
How to printf “unsigned long” in C?Cómo imprimir un int largo sin signo con printf en C?

que tienen mi número así ...

int unsigned long number = 600851475143; 

Estoy intentando imprimir con printf(). Cada vez que lo intento, recibo una advertencia del compilador.

He intentado %uld, %ld y Google no parece haber encontrado la respuesta.

Estoy aprendiendo C, pero no he tenido que usar un long int antes, así que no estoy seguro de lo que debería estar usando.

¿Cuál es el especificador que estoy persiguiendo?

+0

http://projecteuler.net/problem=3 –

+0

puede leer este http://en.cppreference.com/w/cpp/io/c/fprintf –

Respuesta

26

Recomiendo usar el orden estándar (es decir, unsigned long int). %lu es la etiqueta de formato que está buscando.

printf("%lu", 5ul); 
+1

Lo siento, no sabía que había un pedido convencional. Gracias por hacérmelo saber. – alex

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

impresiones 600851475143

+0

no se olvide de agregar 'L' al final de ese entero. –

+0

Argh, sí ... Gracias por el comentario. Acabo de copiarlo de la pregunta publicada. –

Cuestiones relacionadas