A quoi sert (un)signed short int en C++ ?
-RoRo-
Messages postés
98
Date d'inscription
Statut
Membre
Dernière intervention
-
-RoRo- Messages postés 98 Date d'inscription Statut Membre Dernière intervention -
-RoRo- Messages postés 98 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je voulais savoir à quoi consiste d'utiliser unsigned short int ( entier court non signé) et signed short int (entier court signé) ?
Par exemple
Qu'elle est la différence entre ces programmes ci-dessous ?
#include <iostream>
int main()
{
unsigned short int Largeur;
Largeur = 5;
signed short int x;
x = -5;
std::cout << "Largeur : " << Largeur;
std::cout << "x :" << Longueur;
system ("pause");
return 0;
}
ET :::
#include <iostream>
int main()
{
int Largeur;
int x;
Largeur = 5;
x = -5;
std::cout << "Largeur : " << Largeur;
std::cout << "x :" << Longueur;
system ("pause");
return 0;
}
Par exemple
Qu'elle est la différence entre ces programmes ci-dessous ?
#include <iostream>
int main()
{
unsigned short int Largeur;
Largeur = 5;
signed short int x;
x = -5;
std::cout << "Largeur : " << Largeur;
std::cout << "x :" << Longueur;
system ("pause");
return 0;
}
ET :::
#include <iostream>
int main()
{
int Largeur;
int x;
Largeur = 5;
x = -5;
std::cout << "Largeur : " << Largeur;
std::cout << "x :" << Longueur;
system ("pause");
return 0;
}
A voir également:
- C++ short
- Int input python - Forum Python
- Int converter - Télécharger - Bureautique
- Lnb short circuit - Forum TNT / Satellite / Réception
- Int main(void) ✓ - Forum C++
- Int(input()) signification - Forum Python
2 réponses
Bonjour,
Ce ne sont que des recherches de performances optimales (enfin, bien souvent, parfois en utilisant le mauvais type on fait planter tout le programme).
Par exemple, un int est codé sur 32bits, donc il y a 4294967296 valeurs possibles.
Par défaut, quand tu déclares un int, c'est un signed int, c'est-à-dire que ton int peut aller de -2147483647 à +2147483648.
Si dans ton programme tu sais que tu n'utiliseras pas d'entiers négatifs, alors ça ne sert à rien de gaspiller 16bits. Tu déclares ton int en unsigned int, de cette manière ton entier peut aller de 0 à 4294967295.
Pour les shorts, c'est un peu la même façon de penser : un short est codé sur 16bits.
Donc par défaut, ton short peut aller de -32767 à +32768. Si tu sais que ton entier ne va pas dépasser ces valeurs, alors autant gagner quelques bits en évitant d'allouer de la mémoire qui ne sera pas utilisée.
Cordialement,
Ce ne sont que des recherches de performances optimales (enfin, bien souvent, parfois en utilisant le mauvais type on fait planter tout le programme).
Par exemple, un int est codé sur 32bits, donc il y a 4294967296 valeurs possibles.
Par défaut, quand tu déclares un int, c'est un signed int, c'est-à-dire que ton int peut aller de -2147483647 à +2147483648.
Si dans ton programme tu sais que tu n'utiliseras pas d'entiers négatifs, alors ça ne sert à rien de gaspiller 16bits. Tu déclares ton int en unsigned int, de cette manière ton entier peut aller de 0 à 4294967295.
Pour les shorts, c'est un peu la même façon de penser : un short est codé sur 16bits.
Donc par défaut, ton short peut aller de -32767 à +32768. Si tu sais que ton entier ne va pas dépasser ces valeurs, alors autant gagner quelques bits en évitant d'allouer de la mémoire qui ne sera pas utilisée.
Cordialement,