Tipi di Dati e Strutture di Controllo in C#

In questo nuovo articolo parleremo dei tipi di dato nel linguaggio C# fino ad arrivare alle prime strutture di controllo. Come tutti sapete il C# è un linguaggio orientato agli oggetti ed è a metà strada tra java e C++, quindi abbiamo variabili di tipo valore x = 2, variabili di tipo riferimento utilizzando new per creare un nuovo oggetto x = new X() direttamente in heap ( la memoria dinamica ) ed infine variabili di tipo puntatore come quelli del C++, ma in questo caso occorre gestire il codice come unsafe. In pratica il puntatore è una variabile che punta alla prima cella di memoria della variabile.
I tipi di dato in C# sono:

  • bool ( 1 byte può avere valore true o false – valore booleano)
  • sbyte ( 1 byte – short byte)
  • byte (1 byte )
  • short ( 2 byte )
  • ushort ( 2 byte – unsigned short)
  • int ( 4 byte – intero)
  • uint ( 4 byte – unsigned integer)
  • long ( 8 byte – intero lungo)
  • ulong ( 8 byte – unsigned long)
  • char (1 byte o 2 byte se unicode )
  • float (4 byte – valore a precisione singola)
  • double ( 8 byte – valore a precisione doppia)
  • decimal ( 16 byte – valore di solito per valute)
  • string ( testo di lunghezza variabile )

Prendiamo ad esempio lo short di 2 byte, questo tipo di dato è formato da 2 byte e quindi 16 bit, se un bit è utilizzato per il segno + o – rimangono 2 alla 15 e cioè il range di valori di questo dato va da -32768 a +32768. I tipo con la “u” iniziale sono tipi senza segno e quindi ushort va da 0 a 2 alla 16 e cioè 65536, fate voi stessi i calcoli per int e long. Il float è un numero in virgola mobile ed il double è più del doppio, il decimal è un numero in virgola mobile molto più grande e la stringa è il testo; per misurare la sua grandezza si usa 1 byte in ANSI e 2 byte per carattere in UNICODE. Ovviamente la grandezza della variabile è la quantità della memoria RAM allocata dal programma per gestire quel dato, quindi state attenti ad utilizzare il tipo giusto.
Concludiamo introducendo le strutture di controllo e più in particolare dell’if in Italiano “se”; facciamo un esempio:

using System;

public class Corso
{
   static void Main(string[] args)
   {
     bool bMaschio = true;
     if (bMaschio)
       Console.WriteLine("Il mio nome è Giuseppe");
     else
       Console.WriteLine("Il mio nome è Concetta");

     Console.ReadKey();
   }
}

In questo esempio ho impostato una variabile di tipo bool a true e poi stampo un nome maschile nel caso la variabile bMaschio è vera, altrimenti stampo un nome femminile; provate a cambiare il valore e vedrete che cambia anche l’output. Come sempre ho inserito un ReadKey per bloccare il programma e vedere l’output e richiedere la pressione di un tasto per uscire.
Il prossimo articolo verterà sull’approfondimento dell’if e parleremo anche del ciclo for. Come sempre potete richiedere informazioni nel nostro forum.

<< Lezione Precedente – Indice LezioniLezione Successiva >>

Pubblicato
Categorie: C# (sharp)

Di Giampaolo Rossi

Sviluppatore software da oltre 16 anni.