INT_MAX
est- INT_MAX
différent entre un environnement 32 bits et un environnement 64 bits? Il semble que ce soit le cas, même si j’ai entendu dire que l’environnement 64 bits n’utilise que l’environnement INT_MAX de l’environnement 32 bits.
Cela dépend du système. Sur Intel Linux, ils sont identiques. vérifier les limits.h
Votre question est peut-être trop générique, mais sur un environnement 64 bits typique (x86-64), int est de facto de la même taille que sur 386 (en gardant à l’esprit que cela dépend également du système d’exploitation, pas seulement de l’architecture). Le standard C limite uniquement les limites inférieures (comme décrit sur le wiki ).
Pour certains compilateurs, il existe une différence avec le type long
. Autrement dit, long
est 32 bits lors de la compilation pour 32 bits et 64 bits sinon, alors que int
est 32 bits dans les deux cas.
Mais selon ce que vous voulez, la réponse à votre question peut être d’utiliser int64_t
(ou l’équivalent pour votre compilateur, peut-être __int64
ou quelque chose du genre) si vous voulez être sûr d’avoir un int de 64 bits.
Donc, vous devriez clarifier votre question.