Da bin ich tatsächlich von C++ und Java ausgegangen, in denen man ein int[] ohne Initialisierungsliste deklarieren kann. Insofern erübrigt sich in C die Unterscheidung statisches/dynamisches Array.
Zitat:
Code:
p1 = p2 + i; /* Der Zeiger wird um einen Integerwert verschoben */
Soweit ich weiß, heißt das nicht p1 = (void*)((int)p2 + i), sondern p1 = (void*)((int)p2 + 4*i).
@0xF30FC7: Das ist tatsächlich grausig. Eine vernünftige Implementation sollte das als int* intarray = malloc(4*i) behandeln.