🔹 Numériques entiers
| Type C# | Alias .NET | Taille | Valeurs possibles | Signé ? |
|---|---|---|---|---|
sbyte |
System.SByte |
8 bits | -128 à 127 | ✔ Oui |
byte |
System.Byte |
8 bits | 0 à 255 | ✘ Non |
short |
System.Int16 |
16 bits | -32 768 à 32 767 | ✔ Oui |
ushort |
System.UInt16 |
16 bits | 0 à 65 535 | ✘ Non |
int |
System.Int32 |
32 bits | -2 147 483 648 à 2 147 483 647 | ✔ Oui |
uint |
System.UInt32 |
32 bits | 0 à 4 294 967 295 | ✘ Non |
long |
System.Int64 |
64 bits | -9 223 372 036 854 775 808 à 9 223 372 036 854 775 807 | ✔ Oui |
ulong |
System.UInt64 |
64 bits | 0 à 18 446 744 073 709 551 615 | ✘ Non |
👉 Différence principale : la taille (8, 16, 32, 64 bits) et le fait qu’ils soient signés (positifs/négatifs) ou non signés (uniquement positifs).
🔹 Numériques à virgule flottante
| Type C# | Alias .NET | Taille | Précision approximative |
|---|---|---|---|
float |
System.Single |
32 bits | ~7 chiffres significatifs |
double |
System.Double |
64 bits | ~15-16 chiffres significatifs |
decimal |
System.Decimal |
128 bits | ~28-29 chiffres significatifs |
👉 Différence :
-
floatetdoubleutilisent la représentation IEEE 754 → rapides, mais moins précis. -
decimalest plus précis (financier, monétaire) mais plus lent.
🔹 Caractères et booléens
| Type C# | Alias .NET | Taille | Valeurs possibles |
|---|---|---|---|
char |
System.Char |
16 bits | 1 caractère Unicode (U+0000 à U+FFFF) |
bool |
System.Boolean |
8 bits (implémentation) | true ou false |
👉 char représente un caractère Unicode, alors que string (non primitif) est une séquence de caractères.
👉 bool est logique → utilisé dans les conditions (if, while...).
🔹 Types spéciaux
| Type C# | Alias .NET | Description |
|---|---|---|
object |
System.Object |
Base de tous les types (référence) |
string |
System.String |
Chaîne de caractères (immuable) |
dynamic |
System.Object |
Résolution à l’exécution (non primitif strictement, mais intégré) |
✅ Résumé des différences :
-
Taille mémoire (8, 16, 32, 64, 128 bits).
-
Signé vs non signé (entiers).
-
Précision (float/double vs decimal).
-
Nature : numériques, booléens, caractères, chaînes, objets.
-
Valeurs possibles (
true/false, nombres, caractères Unicode, etc.).
Aucun commentaire:
Enregistrer un commentaire