web-dev-qa-db-fra.com

Comment imprimer un entier long non signé avec printf en C?

Duplicata possible:
Comment imprimerf “unsigned long” en C?

J'ai mon numéro comme ça ...

int unsigned long number = 600851475143;

J'essaie de l'imprimer avec printf(). Chaque fois que j'essaye, je reçois un avertissement du compilateur.

J'ai essayé %uld, %ld Et Google n'a pas semblé me ​​trouver la réponse.

J'apprends le C, mais je n'ai jamais eu à utiliser de long int Auparavant, donc je ne sais pas ce que je devrais utiliser.

Quel est le spécificateur que je recherche?

16
alex

Je recommande d'utiliser une commande standard (c'est-à-dire un entier long non signé). %lu est la balise de format que vous recherchez.

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

imprime 600851475143

7
Kiril Kirov