Länge eines beliebigen Arrays
-
hallo

gibt es (überhaupt) eine möglichkeit, die länge eines beliebigen arrays zu ermitteln.
ungefähr so:
template <class T> size_t array_length (T& arr) { . . . }mit (sizeof(T) / sizeof(&arr)) bekomme ich teilweise probleme.
vielen dank für eure antworten

gruß
I. Harter
-
harter schrieb:
mit (sizeof(T) / sizeof(&arr)) bekomme ich teilweise probleme.
Zeige doch mal deine Versuche (Quellcode).
-
harter schrieb:
hallo

gibt es (überhaupt) eine möglichkeit, die länge eines beliebigen arrays zu ermitteln.
ungefähr so:
mit (sizeof(T) / sizeof(&arr)) bekomme ich teilweise probleme.
Das will ich gern glsauben:
Typ Ein_Array[] = { ... }; size_t size = sizeof(Ein_Array)/sizeof(*Ein-Array);
-
Wenn die Länge des Arrays zur Compilezeit bekannt ist, funktioniert folgendes:
#include <iostream> template <typename T, unsigned int N> unsigned int length(T (&)[N]) { return N; } int main() { int arr[5]; std::cout << length(arr) << std::endl; return 0; }