9
static char* theFruit[] = {
"lemon",
"orange",
"apple",
"banana"
};
Ich weiß, dass die Größe 4 ist, indem Sie dieses Array betrachten. Wie finde ich programmgesteuert die Größe dieses Arrays in C? Ich möchte nicht die Größe in Bytes.C find static array size
Funktioniert das in jedem Fall? –
Ja, es ist genau der richtige Weg dazu. Deshalb bekommt er + 1s .... :-). Aber nur mit Arrays, wie du es in deiner Frage hast. Nicht mit Zeigern. –
@eat_a_lemon: hängt davon ab, wie Sie jeden Fall nennen :) Es funktioniert für statische und automatische Arrays, nicht "malloc". Beachten Sie, dass die Größe des Arrays immer ein Vielfaches der Größe des ersten Elements ist, so dass die Division garantiert funktioniert und dass "sizeof" nur Typen betrachtet, so dass es sogar für Arrays mit null Elementen funktioniert. –