« Discussion utilisateur:JackPotte/2020 » : différence entre les versions

Contenu supprimé Contenu ajouté
→‎taille variables : nouvelle section
Ligne 98 :
== taille variables ==
 
sauf que dans la pratique les chiffres que vous donnez ne sont jamais utilisés
sauf que dans l
un char c'est 2^8 (256) soit 128 en moins + 128 en plus, le plus incluant le zero ca donne limites de -128 à +127 (127+la place du 0 = 128)
un int c'est 2^16 soit 2^15 en moins et 2^15 en plus , pour la même raison on est donc de -32 768 à 32 767
(d'ailleurs actuellement un int est le plus souvent basé sur 32 bits et non 16)
 
si vous tapez le code suivant dans un compilateur c
 
#include <limits.h>
#include <stdio.h>
int main(void)
{
printf("Un multiplet se compose de %d bits.\n", CHAR_BIT);
printf("signed char : min = %d ; max = %d.\n", SCHAR_MIN, SCHAR_MAX);
printf("unsigned char : min = 0 ; max = %u.\n", UCHAR_MAX);
printf("short : min = %d ; max = %d.\n", SHRT_MIN, SHRT_MAX);
printf("unsigned short : min = 0 ; max = %u.\n", USHRT_MAX);
printf("int : min = %d ; max = %d.\n", INT_MIN, INT_MAX);
printf("unsigned int : min = 0 ; max = %u.\n", UINT_MAX);
printf("long : min = %ld ; max = %ld.\n", LONG_MIN, LONG_MAX);
printf("unsigned long : min = 0 ; max = %lu.\n", ULONG_MAX);
printf("long long : min = %lld ; max = %lld.\n", LLONG_MIN, LLONG_MAX);
printf("unsigned long long : min = 0 ; max = %llu.\n", ULLONG_MAX);
return 0;
}
 
vous obtiendrez les vrai limites (par exemple sur des compilateurs c en ligne )
 
Un multiplet se compose de 8 bits
signed char : min = -128 ; max = 127
unsigned char : min = 0 ; max = 255
short : min = -32768 ; max = 32767
unsigned short : min = 0 ; max = 65535
int : min = -2147483648 ; max = 2147483647
unsigned int : min = 0 ; max = 4294967295
long : min = -9223372036854775808 ; max = 9223372036854775807
unsigned long : min = 0 ; max = 18446744073709551615
long long : min = -9223372036854775808 ; max = 9223372036854775807
unsigned long long : min = 0 ; max = 18446744073709551615
Retour à la page de l’utilisateur « JackPotte/2020 ».