Jason. Cała informatyka w jednym miejscu!

Przechodzimy do następnego tematu jakim są znaki specjalne w języku C#. Jak rozumieć znak "specjalny"? Jak on wygląda? Czym on jest i jakie ma zastosowanie w kodzie? Na te pytania znajdziecie odpowiedź w środku.

ZNAKI SPECJALNE W JĘZYKU C# DOTYCZĄ WPLATANIA W ŁAŃCUCH ZNAKÓW!

To jest pierwsza informacja jaka jest istotna. Znak specjalny to także znak w rozumieniu typu danych "char", natomiast w rzeczywistości składa się z dwóch znaków. Pierwszym znakiem jest zawsze "backslash" ('\'), a drugim inny konkretny znak. Pełen zestaw odpowiednich znaków jest przedstawiony poniżej, więc spokojnie. Nie sprowadzę Was na zgadywanie ;).

Znaki specjalne są nazywane również "sekwencją sterującą", dlatego że same w sobie nie mają żadnego wpływu na wygląd łańcucha, tylko na zmianę zachowania programu. Pozwólcie, że wyświetlę Wam tabelkę ze wszystkimi takimi sekwencjami. Popatrzcie niżej, a szybko zobaczycie że znaki specjalne nie kończą się na dwóch sztukach :D!

ZNAK ZNACZENIE EFEKT
\n "Ucieczka" przejście do nowego wiersza, jak po naciśnięciu klawisza Enter
\t Tabulacja pozioma wykonanie tabulacji takiej samej, jak po naciśnięciu klawisza "Tab"
\v Tabulacja pionowa wykonanie tabulacji pionowej
\a Alarm odtworzenie dźwięku systemu operacyjnego
\' Pojedynczy apostrof wypisanie znaku pojedynczego apostrofu*
\" Pojedynczy cudzysłów wypisanie znaku pojedynczego cudzysłowu*
\0 Znak pusty pozostawienie znaku pustego (niewidocznego)

* - znak jest jednocześnie oznaczeniem początku i końca znaku / łańcucha znaków, stąd konieczne jest użycie ukośnika wstecznego w postaci obejścia

NIE WYŁÓŻ SIĘ NA TYM!!!

Zaznaczam ponownie. Mimo tego, że są to DWA znaki, to nadal zgodnie z zasadami są traktowane jak jeden znak (typ "char"). Więc jaki z tego wniosek? Że nadal otaczamy je apostrofami!!!

char c = '\n'

Naturalnie, można też umieścić go w łańcuchu znaków:

char c = "\n";

tylko to wciąż będzie literał o długości JEDNEGO znaku, bo w końcu są to znaki specjalne w języku C#. Nie wierzycie? To sprawdźcie sobie co Wam wyjdzie na wyjściu jak podstawicie właściwość "Length" do "Console.WriteLine" :)! Zwraca ona długość łańcucha liczoną w znakach:

Console.WriteLine("\n".Length);

CHCIAŁ(A)BYM ZOSTAWIĆ "BACKSLASH", ALE JEST JUŻ ZAJĘTY

Na końcówkę, jeszcze jedno. Jak w takim razie wyświetlić sam znak "backslasha" skoro jest zajęty? Da się tak w ogóle? Owszem :)! Po prostu zostawiacie kombinację w postaci dwóch ukośników wstecznych:

\\

i to wszystko! Pierwszy zawsze jest oznaczeniem, żeby zidentyfikować znaki specjalne w języku C#, a dodanie drugiego spowoduje wyświetlenie na wyjściu "prawdziwego" ukośnika wstecznego:

\

Znaki specjalne (przynajmniej te najbardziej podstawowe) znajdziecie praktycznie w każdym częściej wykorzystywanym języku programowania. Java, C++ i wiele innych jak najbardziej wspierają te wyżej wymienione, a część z nich może pochwalić się większą ich liczbą!

Znaki specjalne w języku C#

Znaki specjalne w języku C# mają wpływ na zachowanie programu. Choć z wyglądu mogą przypominać dwuznakową sekwencję, zawsze liczone są jako tylko jeden znak!


Koniec. Temat króciutki, choć może początkującym sprawić kłopoty w rozumieniu bądź podczas ich używania. Trzeba uważać gdzie postawić ukośnik :)...

PODOBNE ARTYKUŁY