[C++] Jak poznać rozmiar tablicy?

Najprostszą metodą na poznanie rozmiaru (ilości elementów) tablicy w C++ jest użycie operatora sizeof. Operator ten przyjmuje jako argument obiekt lub typ i zwraca rozmiar w bajtach.

Operator sizeof

#include <iostream>

int main() {
 
 int cars[] = {1, 2, 3, 4, 5, 6, 7, 8};
 int count_cars = sizeof(cars) / sizeof(cars[0]);
 
 std::cout << "Ilość cars: " << count_cars << "\n";
 std::cout << "Rozmiar cars: " << sizeof cars << "\n";
 
 return 0;
 
}

W powyższym przykładzie ilość cars = 8, a rozmiar = 32.

Funkcja std::extent

Kolejnym sposobem na poznanie rozmiaru tablicy jest użycie funkcji std::extent. Jest to funkcja szablonowa z biblioteki standardowej C++, która pozwala uzyskać liczbę elementów w wymiarze tablicy o określonym indeksie. Funkcja ta jest dostępna od wersji C++ 11.

#include <iostream>
#include <type_traits>

int main() {

    int cars[5][3][2][9][5];
    int rozmiar = std::extent<decltype(cars)>::value;
    
    std::cout << "Rozmiar tablicy: " << rozmiar << std::endl;
    
    return 0;
    
}

W powyższym przykładzie rozmiar cars = 5.

Komentarze

Popular

[HTML] Jak wstawić obrazek?

[C++] Jak obliczyć pole i obwód trapezu?

[PHP] Jak pobrać adres strony?