Maison >développement back-end >C++ >Comment le suffixe « LL » permet-il de gérer de grandes valeurs entières en C/C lorsque le type de données « long » est insuffisant ?

Comment le suffixe « LL » permet-il de gérer de grandes valeurs entières en C/C lorsque le type de données « long » est insuffisant ?

DDD
DDDoriginal
2024-11-07 10:28:031022parcourir

How does the `LL` suffix enable handling large integer values in C/C   when the `long` data type is insufficient?

long long en C/C

Cet extrait de code démontre l'utilisation du type de données long long en C/C :

#include <stdio.h>

int main()
{
    int  num1 = 1000000000;
    long num2 = 1000000000;
    long long num3;
    long long num4 = ~0;

    printf("%u %u %u", sizeof(num1), sizeof(num2), sizeof(num3));
    printf("%d %ld %lld %llu", num1, num2, num3, num4);
    return 0;
}

Lors de la compilation du code avec la ligne commentée non commentée (en attribuant une valeur trop grande pour le type de données long), une erreur se produit :

error: integer constant is too large for long type

C'est parce que la valeur 100000000000 est trop grand pour le type de données long et le compilateur nécessite un suffixe pour spécifier explicitement le type de données long long. Pour résoudre ce problème, ajoutez le suffixe LL au littéral :

long long num3 = 100000000000LL;

Le suffixe LL indique que le littéral doit être traité comme une valeur longue et longue. Lorsque le code est compilé et exécuté, il produit des valeurs supérieures à 1 000 000 000, ce qui démontre la plage étendue du type de données long long.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn