Przeczytaj
Podsumowanie informacji na temat zmiennych w języku C++
Typy całkowite
Jeżeli zmienna ma przechowywać liczbę całkowitą, wykorzystujemy jeden z typów całkowitych. Od tego, który z nich wybierzemy, zależy rozmiar zmiennej, czyli ilość miejsca zarezerwowanego dla niej w pamięci. Rozmiar przekłada się z kolei na zakres zmiennych, czyli wielkość zapisywanych liczb.
W języku C++ mamy do dyspozycji następujące typy zmiennych całkowitych:
Nazwa | Rozmiar | Zakres |
|---|---|---|
| bajty | |
| bajty | |
| bajty | |
| bajty | |
| bajty | |
| bajty |
Tabela przedstawia najczęściej używane typy zmiennych całkowitych. Głównym czynnikiem decydującym o wyborze typu jest przewidywana maksymalna wartość liczby, jaką zmienna ma przechowywać.
Rozmiar zmiennych wyrażony jest w bajtach. Zmienna typu short zajmuje w pamięci bajty, zaś zmienna typu int – bajty.
Jeżeli nie przewidujemy, że zmienna będzie przechowywać wartość ujemną, możemy użyć słowa kluczowego unsigned. W rezultacie podwoi się dodatnia część zakresu (stanie się to kosztem części ujemnej).
Załóżmy, że postanowiliśmy wprowadzić do programu zmienną, która przechowuje liczbę .
Wykorzystujemy typ zmiennej całkowitej short, który pozwala zapisywać stosunkowo małe liczby. Ponieważ w programie możemy użyć więcej niż jednej zmiennej danego typu, każdej z nich musimy nadać inną nazwę.
Definiując zmienną w kodzie programu najpierw podajemy jej typ, a następnie nazwę. Instrukcję kończymy znakiem średnika:
Teraz przyjmijmy, że wprowadzamy do programu zmienną, która ma przechowywać liczbę .
W tym przypadku wyjdziemy już poza zakres zmiennej całkowitej typu short.
Mamy wówczas dwie możliwości:
Wybrać typ zmiennej całkowitej
int(będziemy mogli użyć jej także do przechowywania liczb ujemnych).Jeżeli będziemy przechowywać wyłącznie liczby dodatnie, możemy niemal podwoić zakres zmiennej typu
short, rezygnując jednak z zapisywania liczb ujemnych. Efekt taki osiągniemy dodając słowounsignedprzed określeniem typu całkowitego. W opisywanym przypadku byłby nimunsigned short.
Definicje zmiennych odpowiadających obydwu opisanym wariantom przedstawiamy niżej:
Typy rzeczywiste
Jeśli zamierzamy posługiwać się ułamkami, wybierzemy zmienną typu rzeczywistego:
Nazwa | Rozmiar | Zakres |
| bajty | cyfr po przecinku |
| bajtów | cyfr po przecinku |
| bajtów | cyfr po przecinku |
W tabeli podano najczęściej używane typy zmiennych rzeczywistych.
Załóżmy, że wprowadzamy do programu zmienną, która ma przechowywać liczby z dokładnością do miejsc po przecinku. Zastosujemy typ double; samą zmienną zdefiniujemy w następujący sposób:
Jeżeli zależy nam na przechowywaniu liczb mających znacznie dłuższe rozwinięcia dziesiętne, przyda się typ long double.
A oto sposób definiowania zmiennej typu long double:
Typ znakowy
Zmienne typu znakowego służą do przechowywania symboli takich jak litery, cyfry, operatory arytmetyczne, znaki przestankowe i specjalne. Należy zdawać sobie sprawę z faktu, że każdej zmiennej typu znakowego odpowiada określony kod ASCIIkod ASCII.
W kodzie ASCII literze 'a' odpowiada liczba . Z kolei cyfrze przyporządkowano wartość liczbową . Pisząc programy będziemy wykorzystywać te właściwości zmiennych typu znakowego.
Zmienne typu znakowego definiujemy podobnie jak zmienne służące do przechowywania liczb:
Najpierw podajemy typ zmiennej, a następnie jej nazwę. Dobrą praktyką jest nadawanie zmiennym nazw kojarzących się z konkretnymi obiektami. Gdybyśmy chcieli zapisać w zmiennej pierwszą literę imienia, powinniśmy wybrać nazwę pierwsza_litera_imienia, a nie zmienna.
Z tablicą ASCII warto zapoznać się choćby pobieżnie i zapamiętać przynajmniej liczby odpowiadające literom A i a oraz cyfrze . Wiedza taka pozwala obliczyć kod odpowiadający każdej literze i cyfrze.
Typ logiczny
Zmienne tego typu przechowują jedną z dwóch wartości: true (prawda) albo false (fałsz).
Wartość logiczna true jest równa , a false ma wartość .
Nazwa | Rozmiar | Zakres |
|---|---|---|
| bajt |
|
Zmienne logiczne definiujemy używając znanej już składni:
W języku C++ każda liczba większa od (nie tylko ) przypisana do zmiennej typu bool oznacza true (prawda).
Dwie zdefiniowane wyżej zmienne będą przechowywać taką samą wartość: true (prawda).
Słownik
(ang. American Standard Code for Information Interchange) system kodowania znaków, w którym literom łacińskim, cyfrom oraz innym symbolom przyporządkowane są unikatowe odpowiedniki liczbowe z zakresu