Tablice w C++ – Wprowadzenie do char oraz stringów
Tablice są jednym z podstawowych typów struktur danych w języku C++. Umożliwiają one przechowywanie wielu wartości tego samego typu w jednym miejscu, co czyni je niezwykle przydatnymi, gdy potrzebujemy pracować z dużą ilością danych. W tym artykule skupimy się na tablicach typu char, które są wykorzystywane do reprezentowania ciągów znaków, czyli stringów.
Czym są tablice typu char?
Tablice typu char w C++ służą do przechowywania ciągów znaków (stringów). String w C++ jest w rzeczywistości tablicą znaków, która kończy się specjalnym znakiem '\0', oznaczającym koniec ciągu.
Przykład deklaracji tablicy char
char napis[10] = "C++";
Powyższy przykład deklaruje tablicę char o nazwie napis, która może przechowywać do 10 znaków. Została ona zainicjowana ciągiem znaków "C++", a reszta tablicy jest wypełniona pustymi znakami.
Sprawdzanie długości stringa za pomocą funkcji strlen
Aby sprawdzić długość ciągu znaków w tablicy typu char, możemy użyć funkcji strlen, która jest częścią biblioteki cstring.
Przykład użycia strlen
#include <cstring>
#include <iostream>
int main() {
char napis[] = "C++";
int dlugosc = strlen(napis);
std::cout << "Długość stringa: " << dlugosc << std::endl;
return 0;
}
W tym przykładzie tablica napis zawiera ciąg "C++". Funkcja strlen zwraca długość tego ciągu, czyli 3 (nie licząc znaku null '\0' na końcu tablicy).
Alternatywa – Klasa string
W C++ istnieje również alternatywa dla tablic char, a mianowicie klasa std::string z biblioteki <string>. Ta klasa oferuje szereg przydatnych funkcji do manipulacji ciągami znaków, takich jak sprawdzanie długości za pomocą metody length().
Przykład użycia klasy string i metody length()
#include <string>
#include <iostream>
int main() {
std::string napis = "C++";
int dlugosc = napis.length();
std::cout << "Długość stringa: " << dlugosc << std::endl;
return 0;
}
W tym przypadku używamy klasy std::string, a metoda length() zwraca długość stringa. Jest to wygodniejsza opcja, gdyż klasa string zarządza pamięcią za nas.
Podsumowanie
Tablice char oraz klasa std::string to dwa główne sposoby reprezentowania ciągów znaków w języku C++. Funkcja strlen pozwala na sprawdzenie długości ciągu znaków w tablicach char, podczas gdy metoda length() jest bardziej intuicyjna i dostępna w klasie std::string. Wybór zależy od kontekstu oraz specyfiki projektu, w którym pracujesz.
