014
30.11.2005, 21:44 Uhr
virtual
Sexiest Bit alive (Operator)
|
Zitat von J-jayz-Z: |
also sizeof(array)/sizeof(*array) == lenght(array)-1 ? Es gibt schon komplizierte schreibweisen Aber danke für die Auskunft !
|
Nein, es gilt sizeof(a)/sizeof(*a) = length(a)
Ich hätte zwar auch schreiben können sizeof(array)/sizeof(int), aber dann hätte man die Codestelle wieder anfassen müssen, wenn man den Datentypen von array verändert.
Was predator mit arrays meint, deren Größe erst zur Laufzeit feststeht, sind vermutlich Pointer. Der Ansatz geht zwar nicht für pointer, wohl aber für Arrays jeglicher art. In C Wäre etwa möglich:
C++: |
int main() { int n; printf("Wie groß soll denn unser Array sein?"); scanf("%d", &n);
{ int a[n]; printf("Speicherbedarf des arrays: %d; Anzahl der Elemente im Array: %d\n", sizeof(a), sizeof(a)/sizeof(*a)); } }
|
-- Gruß, virtual Quote of the Month Ich eß' nur was ein Gesicht hat (Creme 21) |