Passer au contenu du pied de page
.NET AIDE

Types C# (Comment ça fonctionne pour les développeurs)

Dans n'importe quel langage de programmation, comprendre les types de données est crucial, et C# ne fait pas exception. Que ce soit le type int ou le type de point flottant, chaque type contient un type particulier d'information, également connu sous le nom de données réelles.

Les bases de C#

C# est un langage fortement typé. Mais que signifie un langage fortement typé, demandez-vous ? Cela signifie que chaque variable et objet doit avoir un type de données déclaré. Et c'est le type de données qui détermine quel type de données vous pouvez stocker dans cette variable.

C# a deux principaux types de données : les types valeur et les types référence. Ce sont également les types définis par l'utilisateur dont vous pourriez entendre parler.

Les types valeurs en C#

En C#, les types valeur sont simples. Lorsque vous déclarez une variable de type valeur, les données réelles stockées sont la valeur que vous assignez à la variable. Si vous changez la valeur d'une variable, cela n'affecte pas les autres variables.

Les types valeurs les plus courants en C# incluent :

  • Entiers (représentés par le type int)
  • Nombres à virgule flottante (représentés par les types float et double)
  • Booléen, qui est soit vrai soit faux

Parlons d'abord du type int. Un type int en C# est un type de données 32 bits qui peut stocker des nombres entiers de -2 147 483 648 à 2 147 483 647. Voici un exemple :

int myInteger = 15;
int myInteger = 15;
Dim myInteger As Integer = 15
$vbLabelText   $csharpLabel

Passons maintenant au type de point flottant. En C#, il existe deux types de point flottant : float et double.

Le type float est un nombre flottant de 32 bits avec une précision allant jusqu'à 7 chiffres. Il est idéal pour les calculs scientifiques. Une variable de type float peut être déclarée de cette manière :

float myFloat = 12.34F;
float myFloat = 12.34F;
Dim myFloat As Single = 12.34F
$vbLabelText   $csharpLabel

Le type double est un type de point flottant de 64 bits avec une précision allant jusqu'à 15-16 chiffres. Il est plus précis que le type float et est souvent utilisé pour les calculs financiers et monétaires. Voici un exemple de variable de type double :

double myDouble = 12.3456789;
double myDouble = 12.3456789;
Dim myDouble As Double = 12.3456789
$vbLabelText   $csharpLabel

Types de données prédéfinis en C#

Bien, continuons. C# fournit plusieurs "types de données prédéfinis" que vous pouvez utiliser dans vos applications. Ce sont les éléments fondamentaux que vous pouvez utiliser pour définir vos propres "types définis par l'utilisateur".

Voici quelques exemples :

  • byte : C'est un entier non signé de 8 bits qui va de 0 à 255.
  • char : C'est un caractère Unicode de 16 bits.
  • decimal : Idéal pour les calculs financiers et monétaires en raison de sa haute précision.
  • bool : Stocke soit true ou false, parfait pour les opérations logiques.

Chacun de ces "types de données prédéfinis" a son propre but et sa "valeur par défaut", il est donc important de choisir le bon pour vos besoins !

Valeurs par défaut en C#

En C#, chaque type de données a une valeur par défaut. Pour les variables de type valeur, si vous ne les initialisez pas, elles prennent automatiquement leur valeur par défaut.

Par exemple, la valeur par défaut d'un type int est 0, et la valeur par défaut d'un type valeur à virgule flottante (soit float soit double) est 0,0.

La valeur par défaut pour les types référence est null, indiquant qu'il ne fait référence à aucun objet.

Conversion de type en C#

Parfois, vous pourriez avoir besoin de convertir un type de données en un autre. Cela est connu sous le nom de conversion de type, et C# prend en charge deux types : conversion implicite et conversion explicite.

La conversion implicite se fait automatiquement lorsque vous assignez une valeur d'un type à une variable d'un type compatible qui peut contenir des valeurs plus grandes. Par exemple, vous pouvez assigner un type int à un type double sans perdre d'informations.

int myInt = 10;
double myDouble = myInt; // Implicit conversion
int myInt = 10;
double myDouble = myInt; // Implicit conversion
Dim myInt As Integer = 10
Dim myDouble As Double = myInt ' Implicit conversion
$vbLabelText   $csharpLabel

La conversion explicite, également appelée casting, est nécessaire lorsque vous essayez de convertir entre des types incompatibles, ou de types plus grands à des plus petits. Cela se fait en plaçant le type cible entre parenthèses devant la valeur à convertir.

double myDouble = 10.5; 
int myInt = (int)myDouble; // Explicit conversion, decimal part is lost
double myDouble = 10.5; 
int myInt = (int)myDouble; // Explicit conversion, decimal part is lost
Imports System

Dim myDouble As Double = 10.5
Dim myInt As Integer = CInt(Math.Truncate(myDouble)) ' Explicit conversion, decimal part is lost
$vbLabelText   $csharpLabel

Types référence en C#

Les types référence en C# fonctionnent un peu différemment des types valeur. Au lieu de stocker les données réelles, une variable de type référence stocke l'adresse où la valeur est stockée. En d'autres termes, elle 'réfère' à un autre emplacement dans la mémoire.

Ainsi, si vous modifiez l'objet de type référence, cela affecte aussi l'autre variable. Cela est dû au fait que la variable de type référence reflète automatiquement les modifications apportées aux données réelles stockées à l'adresse mémoire qu'elle pointe.

Maintenant, cela peut sembler un peu complexe, mais voyons cela avec un exemple. Disons que nous avons une classe appelée Person :

class Person
{
    public string Name { get; set; }
}
class Person
{
    public string Name { get; set; }
}
Friend Class Person
	Public Property Name() As String
End Class
$vbLabelText   $csharpLabel

Et ensuite, nous créons deux variables de type "référence" de cette classe :

Person person1 = new Person { Name = "Alice" };
Person person2 = person1;
Person person1 = new Person { Name = "Alice" };
Person person2 = person1;
Dim person1 As New Person With {.Name = "Alice"}
Dim person2 As Person = person1
$vbLabelText   $csharpLabel

Ici, à la fois person1 et person2 pointent vers le même emplacement mémoire. Si nous modifions person1, person2 reflétera ce changement :

person1.Name = "Bob"; 
Console.WriteLine(person2.Name); // Outputs "Bob"
person1.Name = "Bob"; 
Console.WriteLine(person2.Name); // Outputs "Bob"
person1.Name = "Bob"
Console.WriteLine(person2.Name) ' Outputs "Bob"
$vbLabelText   $csharpLabel

Tableaux en C#

Un tableau est un type référence qui contient plusieurs valeurs du même type de données. C'est comme un conteneur où vous pouvez stocker une collection de valeurs, toutes du même type.

Pour déclarer un tableau, vous devez d'abord spécifier le type de données de ses éléments, suivi de crochets. Ensuite, vous utilisez le mot-clé new pour créer le tableau et spécifier sa longueur.

int[] myIntArray = new int[5]; // Array of int type, can hold 5 values
int[] myIntArray = new int[5]; // Array of int type, can hold 5 values
Dim myIntArray(4) As Integer ' Array of int type, can hold 5 values
$vbLabelText   $csharpLabel

Pour accéder aux éléments du tableau, vous utilisez un index, commençant à 0 pour le premier élément.

myIntArray[0] = 10; // Sets the first element of the array to 10
myIntArray[0] = 10; // Sets the first element of the array to 10
myIntArray(0) = 10 ' Sets the first element of the array to 10
$vbLabelText   $csharpLabel

Rappelez-vous, les tableaux en C# sont des "types référence", donc les changements faits dans une variable affecteront toute "autre variable" référant le même tableau.

Générer des PDF avec IronPDF en C#

IronPDF est une bibliothèque puissante pour C# qui permet aux développeurs de créer, modifier et extraire du contenu depuis des PDFs. Cela peut être un vrai atout pour des tâches comme générer des rapports ou créer des factures dynamiques.

Commencer avec IronPDF

Tout d'abord, vous devrez installer IronPDF. Vous pouvez le faire via NuGet, un gestionnaire de paquets populaire pour .NET. Exécutez la commande suivante dans votre console du gestionnaire de paquets :

Install-Package IronPdf

Créer un PDF à partir de HTML

IronPDF est capable de créer des PDFs à partir de HTML. C'est assez simple :

using IronPdf;

var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>").SaveAs("HelloWorld.pdf");
using IronPdf;

var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>").SaveAs("HelloWorld.pdf");
Imports IronPdf

Private Renderer = New ChromePdfRenderer()
Renderer.RenderHtmlAsPdf("<h1>Hello, World!</h1>").SaveAs("HelloWorld.pdf")
$vbLabelText   $csharpLabel

Le code ci-dessus générera un PDF avec le titre "Hello, World!". Remarquez que le code HTML est simplement une chaîne. En C#, une chaîne est un type de référence, et c'est l'un des types les plus utilisés en C#.

Types C# (Comment cela fonctionne pour les développeurs) Figure 1 - texte Hello World

Conclusion

Félicitations ! Vous avez exploré le monde des Types C#, en comprenant les types valeur, les types référence, les types de données prédéfinis, et comment ils façonnent la manière dont vous écrivez du code. Vous avez également vu la puissance de l'utilisation de bibliothèques comme IronPDF.

IronPDF offre un essai gratuit et les licences pour IronPDF commencent à partir de $liteLicensing.

Questions Fréquemment Posées

Que signifie que C# est un langage fortement typé ?

C# est un langage fortement typé, ce qui signifie que chaque variable et objet doivent avoir un type de données déclaré, ce qui détermine quel type de données peut être stocké. Cela assure la sécurité et la cohérence des types lors de l'utilisation de bibliothèques comme IronPDF pour gérer les données.

Comment puis-je convertir HTML en PDF en C# ?

Vous pouvez utiliser la méthode RenderHtmlAsPdf d'IronPDF pour convertir des chaînes HTML en PDFs. Vous pouvez également convertir des fichiers HTML en PDFs en utilisant RenderHtmlFileAsPdf.

Que sont les types de valeur en C# ?

Les types valeur en C# stockent les données réelles qui leur sont assignées. Les exemples courants incluent les entiers (int), les nombres à virgule flottante (float et double), et les booléens (bool). Ces types sont utiles lors de l'utilisation d'IronPDF pour des tâches de traitement des données.

Quel est l'objectif des types de référence en C# ?

Les types de référence en C# stockent l'adresse où se trouvent les données réelles en mémoire. Ceci est crucial lors de l'utilisation de bibliothèques comme IronPDF, car les modifications apportées à une variable peuvent en affecter une autre si elles référencent les mêmes données.

Comment effectuer une conversion de type implicite en C# ?

La conversion de type implicite en C# se fait automatiquement lorsque vous assignez une valeur d'un type à un type compatible qui peut contenir des valeurs plus larges. Par exemple, convertir un int en un double se fait automatiquement, ce que vous pouvez rencontrer lorsque vous travaillez avec IronPDF.

Pouvez-vous donner un exemple de conversion de type explicite en C# ?

La conversion de type explicite, ou casting, est nécessaire en C# lors de la conversion entre des types incompatibles, comme convertir un double en un int. Ceci est fait en plaçant le type cible entre parenthèses devant la valeur, une méthode qui peut également être appliquée lors de l'utilisation d'IronPDF pour un traitement spécialisé des données.

Comment les tableaux sont-ils utilisés en C# ?

Les tableaux en C# sont des types de référence qui peuvent stocker plusieurs valeurs du même type de données. Vous les déclarez en spécifiant le type de données, suivi de crochets, et utilisez le mot-clé new pour créer le tableau et spécifier sa longueur. Ce concept est utile lors de la gestion de grands ensembles de données avec IronPDF.

Comment puis-je créer un PDF à partir de HTML en utilisant une bibliothèque en C# ?

IronPDF est une puissante bibliothèque C# qui permet aux développeurs de créer des PDF à partir de HTML. En utilisant des méthodes comme RenderHtmlAsPdf, vous pouvez facilement générer des PDF directement à partir de contenu HTML.

Quels sont les avantages d'utiliser IronPDF pour la manipulation de PDF en C# ?

IronPDF offre un ensemble robuste de fonctionnalités pour créer, éditer et extraire du contenu de PDF en C#. Il prend en charge la conversion de HTML en PDF, l'ajout d'en-têtes et de bas de page, et plus encore, en faisant un outil essentiel pour les développeurs travaillant avec des documents PDF.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite