¿Cómo imprimir "largo sin firmar" en C?

Resuelto bodacydo asked hace 14 años • 7 respuestas

Nunca puedo entender cómo imprimir unsigned longtipos de datos en C.

Supongamos unsigned_fooque es un unsigned long, luego intento:

  • printf("%lu\n", unsigned_foo)
  • printf("%du\n", unsigned_foo)
  • printf("%ud\n", unsigned_foo)
  • printf("%ll\n", unsigned_foo)
  • printf("%ld\n", unsigned_foo)
  • printf("%dl\n", unsigned_foo)

Y todos imprimen algún tipo de -123123123número en lugar del unsigned longque tengo.

bodacydo avatar Jul 09 '10 11:07 bodacydo
Aceptado

%lues el formato correcto para unsigned long. Parece que hay otros problemas en juego aquí, como corrupción de memoria o una variable no inicializada. ¿Quizás mostrarnos una imagen más grande?

Thanatos avatar Jul 09 '2010 04:07 Thanatos

para entero %d

por mucho tiempo %ld

Por mucho tiempo int %lld

Para int largo y largo sin firmar %llu

Linkon avatar Apr 07 '2017 10:04 Linkon