Heap zuteilen ein 2D-Array (nicht Array von Zeigern)

Ich bin das schreiben von C-code und ich möchte heap reservieren 512*256 bytes. Für meine eigene Bequemlichkeit würde ich gerne in der Lage sein, um Zugriff auf die Elemente mit der syntax array[a][b]; keine arithmetische finden Sie den richtigen index.

Jedem tutorial sehe ich online sagt mir, ich erstelle einen array von Zeigern, die auf arrays von Zeilen möchte ich in mein array. Dies bedeutet, dass jedes subarray werden muss malloc würde und frei würde individuell. Ich bin an einer Lösung interessiert, erfordert nur einen Aufruf von malloc und einem Aufruf von free.(Also alle Elemente zusammenhängend sind) ich denke, dies ist möglich, da ich nicht konstruieren ein jagged array.

Ich würde mich freuen, wenn jemand erzählen könnte die syntax für die Deklaration so ein array.

Kommentar zu dem Problem
Ist C++ eine option? Sie können eine einfache C++ - Objekte, die überlastung der Indizierung Betreiber. Kommentarautor: Richard J. Ross III
@RichardJ.RossIII: Ist das wirklich eine gültige Antwort auf die Frage "wie mache ich das in C?" (die Realisierung, dass Sie hat lassen Sie es als Kommentar). Ich nehme C über C++ jeden Tag danke. Kommentarautor: Ed S.
@EdS. während Sie vielleicht lieber C, C++ ist besser, in ganz wenigen Situationen, und dies wäre einer von Ihnen. Ich habe es als Kommentar einfach zu bestimmen, ob es wäre eine option. Kommentarautor: Richard J. Ross III
@RichardJ.RossIII: C++ ist besser für die Zuteilung von 2d-array? huh? Ich glaube nicht, das ist leicht machbar in C, nicht C++ operator-überladung erforderlich. Kommentarautor: Ed S.
Siehe meine Antwort; im Gegensatz zu den anderen, die es tatsächlich tut, was Sie Fragen. Kommentarautor: R..

InformationsquelleAutor der Frage Paul | 2012-04-12

Schreibe einen Kommentar