003
16.10.2006, 20:14 Uhr
0xdeadbeef
Gott (Operator)
|
Auf diese Art geht das in C nicht. Der normale Weg, das Problem zu umschiffen, ist die Übergabe des Arrays als Parameter, um dann da rein zu schreiben:
C++: |
void funktion(int *dest, size_t n) // dest ist n Elemente groß { int i;
for(i = 0; i < n; ++i) { dest[i] = i; // nur so zum Beispiel } }
int main() // main ist immer int { int blub[10]; funktion(blub, 10);
return 0; }
|
Die Länge mitzugeben, ist zwar technisch nicht zwingend erforderlich, aber good practice, da sich auf diese Art relativ zuverlässig buffer overflows vermeiden lassen. -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra Dieser Post wurde am 16.10.2006 um 20:15 Uhr von 0xdeadbeef editiert. |