impression de type long long non signé au format hexadécimal

J’essaie d’imprimer un unsigned long long comme ceci:

  printf("Hex add is: 0x%ux ", hexAdd); 

mais j’obtiens des erreurs de conversion de type car j’ai un unsigned long long .

Vous pouvez utiliser le même modificateur de taille ll pour %x , donc:

 #include  int main() { unsigned long long x = 123456789012345ULL; printf("%llx\n", x); return 0; } 

La gamme complète des spécificateurs de conversion et de formatage est dans une grande table ici:

  • documentation printf sur cppeference.com

essayez %llu – ce sera long longtemps non signé sous forme décimale

%llx imprime longtemps longtemps non signé en hexadécimal

 printf("Hex add is: %llu", hexAdd);