1. Weiterleitung zu NetzLiving.de
  2. Forum
    1. Unerledigte Themen
  3. zum neuen Forum
  • Anmelden
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

[C] array of array of char

    • Frage
  • Michael
  • 3. April 2003 um 18:06
  • Unerledigt
Hallo zusammen,

das Informatik-Forum geht in den Archivmodus, genaue Informationen kann man der entsprechenden Ankündigung entnehmen. Als Dankeschön für die Treue bekommt man von uns einen Gutscheincode (informatikforum30) womit man bei netzliving.de 30% auf das erste Jahr sparen kann. (Genaue Infos sind ebenfalls in der Ankündigung)

Vielen Dank für die Treue und das Verständnis!
  • Michael
    Punkte
    65
    Beiträge
    8
    • 3. April 2003 um 18:06
    • #1

    ich fange grade erst an mit c und hab noch so meine probleme damit :). ich würde gerne ein array of strings erstellen. wieviele strings ich habe und wie lang diese sind, weiß ich zu beginn aber noch nicht, da sie von der eingabe abhängen.
    zählen kann ich sie dann recht leicht (sind eingaben, die mit ',' getrennt sind) und trennen auch mit strtok.

    ich wollte mir mit malloc speicher für soundsoviele pointer auf char reservieren lassen, wie ich eben gezählt hab. jetzt würd ich gerne wissen, wie ich das am besten mache (bzw wies besser anders geht).

    malloc möchte ja ne größe haben (also zum beispiel 10*sizeof(int) für 10 integer variablen. aber wie wär das dann in meinem fall? den typ pointer gibts ja nicht. eigentlich würde ich ja dann auch nicht die pointer selbst sondern die adressen speichern, die auf die strings zeigen. aber wieviel speicher muss ich da reservieren und welchen typ hat die variable, die sich die adresse merkt... ?

    vielleicht kann mir wer helfen, sollte ja für einen c-kenner kein problem sein.

    thx,

  • jeuneS2
    Punkte
    1.227
    Beiträge
    238
    • 3. April 2003 um 18:33
    • #2

    ich denke, was du suchst ist sizeof(int *), also die Größe eines Pointers (was ja gleich der Größe einer Speicheraddresse ist). Reservieren musst du je nach Programm unterschiedliches, in deinem Fall vermute ich:
    1) Platz für die Pointer (evtl. hilft da realloc())
    2) Platz für die Strings (klassisches malloc())

    Ahja, klassisches Beispiel für char ** (also beliebig viele beliebig lange Strings) ist argv, der zweite Aufrufparameter von main(), vielleicht hilft dir das was...

  • Maximilian Rupp 27. Dezember 2024 um 12:08

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

  1. Datenschutzerklärung
  2. Impressum