Fehler: cannot convert `int (*)[2]' to `int**' in initialization

Dieses Thema im Forum "C/C++" wurde erstellt von Sternenjaeger, 19.12.2006.

  1. #1 Sternenjaeger, 19.12.2006
    Sternenjaeger

    Sternenjaeger Grünschnabel

    Dabei seit:
    19.12.2006
    Beiträge:
    3
    Zustimmungen:
    0
    ich versuche gerade, ein Programm zu compilieren.... aber er bricht immer mit dieser Fehlermeldung ab.

    Die Zeile, um die es geht lautet:

    int **fildes = new int[sequenz_laenge-1][2];


    fildes soll spaeter Deskriptoren fuer Pipes beinhalten... (bloede Zeiger *seufz*)
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. musiKk

    musiKk Dr. Strangelove

    Dabei seit:
    30.07.2006
    Beiträge:
    264
    Zustimmungen:
    0
    Ort:
    Leipzig
    Hm... weiss nicht, inwieweit das hilft, aber man kann ja auch die C-Funktion malloc zum Speicher reservieren verwenden.
     
  4. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Du bist stolperst ueber den eher subtilen Unterschied zwischen Zeigern und Feldern gestolpert. Felder sind feste Bereiche im Speicher, ihr Ort aendert sich waehrend des Programmes nicht. Zeiger zeigen auf Bereiche im Speicher (z.B. auf den Beginn eines Feldes) und koennen waehrend des Programmablaufes auf unterschiedliche Bereiche zeigen.

    Wenn das alles zu kompliziert klingt, mach Dir nichts drauss: praktisch musst Du ein zweidimensionales, dynamisches Feld in zwei Schritten anlegen:

    Code:
    int **feld = new int* [dim1];
    for (int i = 0; i < dim1; ++i) {
       feld[i] = new int [dim2];
    }
    
    Zum Freigeben gehst Du rueckwaerts vor:
    Code:
    for(int i = 0; i < dim1; ++i) {
      delete[] feld[i];
    }
    delete [] feld;
    
     
Thema:

Fehler: cannot convert `int (*)[2]' to `int**' in initialization

Die Seite wird geladen...

Fehler: cannot convert `int (*)[2]' to `int**' in initialization - Ähnliche Themen

  1. sudo Fehler: cannot connect to X server

    sudo Fehler: cannot connect to X server: Hallo, bekomme immer den Fehler raus: cannot connect to X server wenn ich z.B.: sudo wpa_gui eingebe. Hier die Zeile aus meiners...
  2. SuSE 10.2 : Cannot find the image Installationsfehler

    SuSE 10.2 : Cannot find the image Installationsfehler: Hallo zusammen! ich habe folgendes Problem bei der Installation von OpenSuse Linux 10.2. Ich habe mir die .iso Datein gesaugt und auf 5 CDs...
  3. Terminal Fehlermeldung

    Terminal Fehlermeldung: Hola, mir ist aufgefallen das ständig ein Fehler erscheint sobald ich einen Terminal öffne. Hat zwar keine Auswirkung auf die Arbeit damit sieht...
  4. LibreOffice 5.1.1 korrigiert Fehler

    LibreOffice 5.1.1 korrigiert Fehler: Das LibreOffice-Projekt hat die Verfügbarkeit der Version 5.1.1 der freien Office-Suite bekannt gegeben. In diesem planmäßigen Update werden...
  5. Fehler in glibc gefährdet zahlreiche Systeme

    Fehler in glibc gefährdet zahlreiche Systeme: Sicherheitsforscher haben eine Sicherheitslücke in der glibc-Bibliothek entdeckt, die sich von externen Angreifern über das Netzwerk ausnutzen...