W tej lekcji dowiesz się, czym jest zmienna w C++ i jak z niej korzystać. Zmienna to nazwana przestrzeń w pamięci komputera, w której można przechowywać dane, takie jak liczby, znaki czy ciągi znaków. W C++ każda zmienna ma swój typ, który określa rodzaj przechowywanych danych (np. liczby całkowite, zmiennoprzecinkowe, znaki). Typ zmiennej decyduje o tym, jak duża przestrzeń w pamięci zostanie przydzielona oraz jakie operacje można na niej wykonywać.
Zmienna w C++ składa się z kilku elementów:
- Typ danych: Określa, jakie dane zmienna może przechowywać (np.
int
,double
,char
). - Nazwa: Unikalny identyfikator zmiennej w programie.
- Wartość: Dane, które zmienna przechowuje.
- Zakres: Określa, gdzie w programie zmienna jest dostępna.
W poniższym przykładzie stworzymy program, który korzysta z różnych typów zmiennych, pokazując, jak je zadeklarować, zainicjalizować oraz jak na nich operować.
Przykład kodu – Zmienne w C++
Stwórz nowy plik o nazwie variables.cpp
i wklej do niego poniższy kod:
// Importujemy bibliotekę iostream, która pozwala na operacje wejścia/wyjścia
#include <iostream>
// Główna funkcja programu
int main() {
// --- Deklaracja i inicjalizacja zmiennych ---
// Deklarujemy zmienną całkowitą o nazwie 'age' i przypisujemy jej wartość 25
int age = 25;
// Deklarujemy zmienną zmiennoprzecinkową 'height' i przypisujemy jej wartość 1.75
double height = 1.75;
// Deklarujemy zmienną znakową 'initial' i przypisujemy jej wartość 'J'
char initial = 'J';
// Deklarujemy zmienną logiczną 'isStudent' i przypisujemy jej wartość true
bool isStudent = true;
// Deklarujemy zmienną łańcuchową 'name' (string) i przypisujemy jej wartość "Jan"
std::string name = "Jan";
// --- Operacje na zmiennych ---
// Wyświetlamy wartości zmiennych na ekranie
std::cout << "Imię: " << name << std::endl; // Wyświetla wartość zmiennej 'name'
std::cout << "Wiek: " << age << " lat" << std::endl; // Wyświetla wartość zmiennej 'age'
std::cout << "Wzrost: " << height << " metra" << std::endl; // Wyświetla wartość zmiennej 'height'
std::cout << "Inicjał: " << initial << std::endl; // Wyświetla wartość zmiennej 'initial'
// Wykorzystujemy zmienną logiczną do warunkowego wyświetlenia tekstu
if (isStudent) {
std::cout << name << " jest studentem." << std::endl;
} else {
std::cout << name << " nie jest studentem." << std::endl;
}
// --- Modyfikacja wartości zmiennych ---
age = 26; // Zmieniamy wartość zmiennej 'age'
height = 1.8; // Zmieniamy wartość zmiennej 'height'
name = "Jan Kowalski"; // Zmieniamy wartość zmiennej 'name'
// Wyświetlamy zaktualizowane wartości zmiennych
std::cout << "Zaktualizowane imię: " << name << std::endl;
std::cout << "Zaktualizowany wiek: " << age << " lat" << std::endl;
std::cout << "Zaktualizowany wzrost: " << height << " metra" << std::endl;
// --- Deklaracja zmiennej bez inicjalizacji ---
int uninitialized; // Deklarujemy zmienną 'uninitialized' bez przypisywania wartości
// Uwaga: Wyświetlenie niezainicjalizowanej zmiennej może prowadzić do nieokreślonych wyników
std::cout << "Wartość niezainicjalizowanej zmiennej: " << uninitialized << std::endl;
// Zwracamy 0, co oznacza, że program zakończył się pomyślnie
return 0;
}
Wyjaśnienie Kodu:
- Deklaracja i inicjalizacja zmiennych:
int age = 25;
– Deklaruje zmienną całkowitąage
i przypisuje jej wartość25
.double height = 1.75;
– Deklaruje zmienną zmiennoprzecinkowąheight
z wartością1.75
.char initial = 'J';
– Deklaruje zmienną znakowąinitial
, która przechowuje pojedynczy znak'J'
.bool isStudent = true;
– Deklaruje zmienną logicznąisStudent
, która może przechowywać wartościtrue
lubfalse
.std::string name = "Jan";
– Deklaruje zmienną łańcuchowąname
typustd::string
, która przechowuje tekst.
- Operacje na zmiennych:
std::cout << ...
– Używa strumienia wyjściowego do wyświetlenia wartości zmiennych na ekranie.if (isStudent) { ... } else { ... }
– Wykorzystuje zmienną logicznąisStudent
do wyświetlenia odpowiedniego komunikatu.
- Modyfikacja wartości zmiennych:
age = 26;
– Zmienia wartość zmiennejage
na26
.height = 1.8;
– Zmienia wartość zmiennejheight
na1.8
.name = "Jan Kowalski";
– Zmienia zawartość zmiennejname
.
- Deklaracja zmiennej bez inicjalizacji:
int uninitialized;
– Deklaruje zmiennąuninitialized
bez przypisywania jej wartości.std::cout << uninitialized;
– Próbuje wyświetlić wartość niezainicjalizowanej zmiennej. Może prowadzić to do nieokreślonego wyniku, ponieważ zmienna nie została zainicjalizowana.
return 0;
:- Informuje system operacyjny, że program zakończył się pomyślnie.
Podsumowanie
W tej lekcji nauczyłeś się:
- Czym są zmienne w C++ i jak je deklarować.
- Typów danych używanych do deklaracji zmiennych, takich jak
int
,double
,char
,bool
istd::string
. - Jak inicjalizować zmienne oraz jak je modyfikować w trakcie działania programu.
- Jak używać zmiennych w różnych operacjach, takich jak wyświetlanie tekstu i warunkowe wyświetlanie komunikatów.
- Uświadomiłeś sobie, że korzystanie z niezainicjalizowanych zmiennych może prowadzić do nieokreślonych wyników.
Zrozumienie, jak działają zmienne i jakie typy danych można przechowywać w C++, to podstawa do tworzenia bardziej złożonych programów.