1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • 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
  • Michael
    3
    Michael
    Mitglied
    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
    11
    jeuneS2
    Mitglied
    Reaktionen
    17
    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...

    Why bother spending time reading up on things? Everybody's an authority, in a free land.

  • Maximilian Rupp 27. Dezember 2024 um 12:08

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung