Quels types de données existent en C#

Quels Types De Donnees Existent En C



Les types de données sont un aspect important de tout langage de programmation, et C# propose plusieurs types de données qui sont utilisés pour déclarer des variables, définir des méthodes et créer des objets. Dans cet article, nous aborderons les différents types de données en C# et leurs sous-catégories, y compris les types de données valeur, référence et pointeur.

Quels types de données existent en C# ?

C# est un langage de programmation fortement typé , ce qui signifie que toutes les variables doivent être déclarées avec un type de données spécifique et comporte trois catégories principales de types de données :







1 : Types de données de valeur

Les types de données de valeur sont ceux qui stockent leurs valeurs directement en mémoire. Ils sont alloués sur la pile et souvent utilisés pour stocker des ensembles de données plus petits. Voici les sous-catégories de types de données de valeur :



Type de données numériques



Ces types de données sont utilisés pour stocker des valeurs numériques. Les types de données numériques sont divisés en plusieurs sous-catégories, telles que les décimales, les entiers et les nombres à virgule flottante :





  • Entiers : Ces types de données sont utilisés pour stocker des nombres entiers et les sous-catégories d'entiers incluent sbyte, byte, short, ushort, int, uint, long et ulong. La plage de valeurs que chaque format de données entier peut contenir varie.
  • Nombres à virgule flottante: Ces types de données sont utilisés pour stocker des nombres décimaux et les sous-catégories de nombres à virgule flottante incluent float et double. Float peut stocker jusqu'à 7 chiffres décimaux, tandis que double peut stocker jusqu'à 15 chiffres décimaux.
  • Décimales : Ces types de données sont utilisés pour stocker des entiers décimaux très précis. Decimal peut stocker jusqu'à 28 chiffres décimaux.

Type de données booléen

Les valeurs booléennes, qui ne peuvent être que vraies ou fausses, sont stockées sous cette forme de données.



Type de données de caractère

Les caractères uniques sont stockés à l'aide de ce type de données.

Exemple

L'exemple de code suivant illustre comment utiliser le type de données value en C# :

utiliser le système ;

espace de noms ValueDataTypesExample
{
Programme de classe
{
vide statique principal ( chaîne [ ] arguments )
{
int monInt = 5 ;
float myFloat = 3.14f;
double monDouble = 3.14159265359 ;
bool monBool = vrai ;
char monChar = 'un' ;

Console.WriteLineConsole.WriteLine ( 'Ma valeur entière est : ' + monInt ) ;
Console.WriteLineConsole.WriteLine ( 'Ma valeur flottante est :' + monFlotteur ) ;
Console.WriteLineConsole.WriteLine ( 'Ma double valeur est :' + monDouble ) ;
Console.WriteLineConsole.WriteLine ( 'Ma valeur booléenne est :' + monBool ) ;
Console.WriteLineConsole.WriteLine ( 'La valeur de mon personnage est :' + monChar ) ;
}
}
}

Dans cet exemple, nous avons déclaré et initialisé des variables de différents types de données de valeur tels que int, float, double, bool et char. Nous avons ensuite imprimé les valeurs de ces variables à l'aide de la méthode Console.WriteLine, la sortie de ce programme sera :

2 : Types de données de référence

Les types de données de référence sont ceux qui stockent une référence à l'emplacement de mémoire où la valeur est stockée. Ils sont alloués sur le tas et sont généralement utilisés pour stocker de plus grandes quantités de données. Voici les sous-catégories de types de données de référence :

Classe

En C#, une classe est un type de référence qui définit un plan de création d'objets.

Chaîne

Ce type de données de référence est utilisé pour stocker des données texte, la chaîne est un type de référence, mais il se comporte comme un type de valeur à bien des égards.

Déployer

Une collection de valeurs du même type peut être stockée à l'aide de ce type de données. Les tableaux sont des types référence, mais ils peuvent aussi se comporter comme des types valeur dans certains cas.

Interface

Une interface définit un ensemble de méthodes, de propriétés, d'événements et d'indexeurs, sans fournir de détails d'implémentation.

Déléguer

Un délégué vous permet de passer une méthode en tant qu'argument à une autre méthode, puis d'invoquer cette méthode ultérieurement via le délégué.

Exemple

Voici un exemple de code C # qui montre comment utiliser types de données de référence :

utiliser le système ;

personne de classe
{
nom de chaîne publique ;
public int Age ;
}

Programme de classe
{
vide statique principal ( chaîne [ ] arguments )
{
Personne personne1 = nouvelle Personne ( ) ;
person1.Name = 'LUI-MÊME' ;
personne1.Age = vingt ;

Personne personne2 = personne1 ;
personne2.Age = 30 ;

Console.WriteLineConsole.WriteLine ( personne1.Nom + ' est ' + personne1.Age + ' ans.' ) ;
Console.WriteLineConsole.WriteLine ( personne2.Nom + ' est ' + personne2.Age + ' ans.' ) ;
}
}

La classe Person dans cet exemple a deux champs publics : Name, qui est de type string, et Age, qui est de type int. Ensuite, nous créons une nouvelle instance de la classe Person et l'affectons à person1 dans la méthode Main. Nous modifions les attributs Nom et Âge de person1.

Ensuite, nous créons une autre variable de référence person2 et lui attribuons la valeur de person1. Nous changeons ensuite la propriété Age de person2 en 30.

Enfin, nous imprimons le nom et l'âge de person1 et person2. Notez que, en changeant la valeur de personne2.Age modifie également la valeur de personne1.Âge , puisque les deux variables font référence au même objet en mémoire.

3 : Types de données de pointeur

Les types de données pointeur sont utilisés pour stocker l'adresse mémoire d'une autre variable. Ils sont utilisés dans la programmation de bas niveau, comme la programmation au niveau du système ou le développement de pilotes de périphériques . En C #, les types de données de pointeur ne sont pas utilisés directement , mais ils peuvent être utilisés dans des blocs de code non sécurisés. Voici la sous-catégorie des types de données de pointeur :

Type de données du pointeur

Ce type de données est utilisé pour stocker l'adresse mémoire d'une autre variable.

Voici un exemple qui illustre l'utilisation de types de données de pointeur en C# bien que cela demande beaucoup de soin :

utiliser le système ;

Programme de classe {
vide dangereux statique principal ( ) {
nombre entier = dix ;
entier * p = & sur une;
Console.WriteLineConsole.WriteLine ( $ 'Valeur de num : {num}' ) ;
Console.WriteLineConsole.WriteLine ( $ 'Adresse de num : {(long)p:X}' ) ;
Console.WriteLineConsole.WriteLine ( $ 'Valeur de num utilisant le pointeur : {*p}' ) ;
Console.ReadLineConsole.ReadLine ( ) ;
}
}

Dans cet exemple, nous utilisons le mot clé unsafe pour autoriser l'utilisation de pointeurs. Nous déclarons une variable de type int et lui donnons la valeur 10. Nous créons ensuite une variable pointeur de type int* et lui affectons l'adresse mémoire de la valeur à l'aide de l'opérateur &.

De plus, on accède alors à la valeur stockée dans value en déréférencant le pointeur à l'aide de l'opérateur *, et on peut également modifier la valeur à l'aide du même opérateur :

Note: L'utilisation de pointeurs en C# nécessite un soin et une attention supplémentaires pour éviter les problèmes de gestion de la mémoire. Ils ne doivent donc être utilisés que lorsque cela est nécessaire et avec prudence.

Conclusion

Il existe de nombreux types de données différents disponibles en C # qui peuvent être utilisés pour diverses tâches. De plus petites quantités de données sont stockées à l'aide de types de données de valeur, et de plus grandes quantités sont stockées à l'aide de types de données de référence. Les types de données de pointeur sont utilisés dans la programmation de bas niveau et ne sont pas couramment utilisés en C#.