kostenloser Webspace werbefrei: lima-city


Array als Zeiger?

lima-cityForumProgrammiersprachenC/C++ und D

  1. Autor dieses Themas

    robbmaster

    Kostenloser Webspace von robbmaster

    robbmaster hat kostenlosen Webspace.

    Kann mir mal jemand eben erklären, wie man ein gesamtes Array (kein einzelnes Element) als Zeiger Parameter übergeben kann?
    Danke schonmal. Hierbei sollte allerdings noch gesagt sein, dass es sich um ein zweidimensionales Array handelt.

    [in dem Fall das Array ' qu[order][order] ' - wobei order die Maximale Größe ist und vorher definiert wird.]
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. int someFunction(char** arr)

    würde ich sagen. Du musst natürlich noch die Typen ändern (int und char).
  4. Autor dieses Themas

    robbmaster

    Kostenloser Webspace von robbmaster

    robbmaster hat kostenlosen Webspace.


    ____


    Edit: Ich habe folgendes gefunden:
    http://www.computerbase.de/forum/showthread.php?t=359428

    Heißt, das muss ich alles nicht mal tun. Ich habe jetzt allerdings ein anderes Problem.
    In der Hauptfunktion definiere ich die Maximal Größe des Arrays mit der Variable 'order', die ich vorher über Cin einlesen lasse.
    Wenn ich jetzt 'order' per Parameter ebenfalls an die Nebenfunktion übergebe, kann das Array dort trotzdem nicht den Wert von 'order' annehmen. Wenn ich jedoch irgendeinen Zahlen wert da eingebe, will er es nicht konvertieren. :/

    Beitrag zuletzt geändert: 27.3.2010 17:09:10 von robbmaster
  5. Also in C++ ist ein Array generell schonmal ein Zeiger und Zeiger lassen sich wie Arrays behandeln.
    Wenn du also deine Funtkion hast: funktionsnahme(datentyp* array,int order)
    Wobei datentyp der Typ deines Arrays ist. Dann kannst du innerhalb der Funktion komplett auf den Array zugreifen. Da C++ nicht direkt mehrdimensionale Arrays unterstützt, muss du bei der Indizierung folgendes beachten: array[x+order*y] entspricht dem Element array[x][y].
    Falls du noch Fragen dazu hast, dann solltest du dein Problem etwas genauer formulieren in einer Frageformulieren, weil ich nicht genau weiß, was du wissen willst.


    Beitrag zuletzt geändert: 28.3.2010 21:10:38 von sektor
  6. Was heißt C++ unterstützt keine mehrdimensionalen Arrays? Natürlich hat C das!
  7. Aber nicht in der Form array[x][y]. Man müsste erst array als array von pointern auf den gewünschten datentyp anlegen, um solch einen Zugriff möglich zu machen. Hingegen in Sprachen, wie Delphi ist das gleich in der Deklaration enthalten.
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!