C # - zmienne

Zmienna to nic innego jak nazwa nadana obszarowi pamięci, którym nasze programy mogą manipulować. Każda zmienna w języku C # ma określony typ, który określa rozmiar i układ pamięci zmiennej, zakres wartości, które mogą być przechowywane w tej pamięci oraz zestaw operacji, które można zastosować do zmiennej.

Podstawowe typy wartości podane w C # można sklasyfikować jako -

Rodzaj Przykład
Typy całkowe sbyte, byte, short, ushort, int, uint, long, ulong i char
Typy zmiennoprzecinkowe unosić się i podwójnie
Typy dziesiętne dziesiętny
Typy logiczne wartości true lub false, zgodnie z przypisaniem
Typy zerowe Typy danych dopuszczające wartość null

C # umożliwia także definiowanie innych typów wartości zmiennych, takich jak enum i typy referencyjne zmiennych, takie jak class, które omówimy w kolejnych rozdziałach.

Definiowanie zmiennych

Składnia definicji zmiennej w C # to -

<data_type> <variable_list>;

Tutaj data_type musi być prawidłowym typem danych C #, w tym char, int, float, double lub dowolnym typem danych zdefiniowanym przez użytkownika, a variable_list może składać się z jednej lub więcej nazw identyfikatorów oddzielonych przecinkami.

Oto niektóre prawidłowe definicje zmiennych -

int i, j, k;
char c, ch;
float f, salary;
double d;

Możesz zainicjować zmienną w momencie definiowania jako -

int i = 100;

Inicjalizacja zmiennych

Zmienne są inicjalizowane (przypisywane wartości) znakiem równości, po którym następuje stałe wyrażenie. Ogólna forma inicjalizacji to -

variable_name = value;

Zmienne można zainicjować w ich deklaracji. Inicjator składa się ze znaku równości, po którym następuje stałe wyrażenie jako -

<data_type> <variable_name> = value;

Oto kilka przykładów:

int d = 3, f = 5;    /* initializing d and f. */
byte z = 22;         /* initializes z. */
double pi = 3.14159; /* declares an approximation of pi. */
char x = 'x';        /* the variable x has the value 'x'. */

Dobrą praktyką programistyczną jest prawidłowe inicjowanie zmiennych, w przeciwnym razie czasami program może dać nieoczekiwany wynik.

Poniższy przykład używa różnych typów zmiennych -

using System;

namespace VariableDefinition {
   class Program {
      static void Main(string[] args) {
         short a;
         int b ;
         double c;

         /* actual initialization */
         a = 10;
         b = 20;
         c = a + b;
         Console.WriteLine("a = {0}, b = {1}, c = {2}", a, b, c);
         Console.ReadLine();
      }
   }
}

Kiedy powyższy kod jest kompilowany i wykonywany, daje następujący wynik -

a = 10, b = 20, c = 30

Akceptowanie wartości od użytkownika

Plik Console klasa w System Przestrzeń nazw udostępnia funkcję ReadLine() do przyjmowania danych wejściowych od użytkownika i przechowywania ich w zmiennej.

Na przykład,

int num;
num = Convert.ToInt32(Console.ReadLine());

Funkcja Convert.ToInt32() konwertuje dane wprowadzone przez użytkownika na typ danych int, ponieważ Console.ReadLine() akceptuje dane w formacie łańcucha.

Wyrażenia Lvalue i Rvalue w C #

Istnieją dwa rodzaje wyrażeń w języku C # -

  • lvalue - Wyrażenie, które jest lwartością, może pojawić się po lewej lub prawej stronie przypisania.

  • rvalue - Wyrażenie będące wartością r może pojawić się po prawej, ale nie po lewej stronie przypisania.

Zmienne to lvalues, dlatego mogą pojawiać się po lewej stronie przydziału. Literały numeryczne są wartościami r, dlatego nie można ich przypisywać i nie mogą pojawiać się po lewej stronie. Poniżej znajduje się prawidłowa instrukcja języka C # -

int g = 20;

Ale poniższe nie jest prawidłową instrukcją i spowodowałoby błąd w czasie kompilacji -

10 = 20;