Anzeige:
Ergebnis 1 bis 15 von 18

Thema: Zum 40.x malloc() und konsorten.

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201

    Zum 40.x malloc() und konsorten.

    Hallo,
    gabs bestimmt schon mindestens 40. mal, ich hab aber über die suche nichts passendes gefunden.

    ich hab mich schon immer gefragt, wie man den Speicher richtig reserviert (allozieren? allokieren? Was auch immer)

    Ich habe zum Beispiel das hier (Natürlich NICHT zur Nachahmung bestimmt):
    Code:
        char* site = getSite(user, pass);
        char* G=malloc(1024);
        char* Y=malloc(1024);
        sprintf(G, "%d", getGreen(site));
        sprintf(Y, "%d", getYellow(site));
        gtk_label_set_label(GTK_LABEL(Green), G);
        gtk_label_set_label(GTK_LABEL(Yellow), Y);
        free(site);
        free(Y);
        free(G);
    Was natürlich alles falsch ist, ausser site, das wurde von curl vernümftig allokiert.
    Die 1024 sind völlig überdimensioniert, für einen Integer, der wenns hochkommt maximal 200 ist. Mit Valgrind kann man garnicht mehr debuggen, weil es schon soviele Reservierungsfehler gibt. Die will ich jetzt lösen, und zwar mit eurer hilfe.
    Also: Wie allokiere ich den Speicher, dass er bei "7\0" auch nur sizeof(char)*2 groß ist?

    MfG Giuly
    Geändert von Giuly (08-11-2005 um 23:14 Uhr)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •