Strdup() und strcpy

void x( )
{
    strcpy(a, strdup(p) );
}

(error) die Zuweisung mit strdup, strcpy nicht loslassen

Kann mir jemand sagen, was falsch ist mit der obigen Aussage und der Grund warum ich diese Fehlermeldung bekommen?

was zum Teufel wollen Sie tun?
nichts 😀 eigentlich nur Schritte bei der Programmierung,beim Lesen Formen sah ich diese Funktion versucht einige Kombinationen...(nur zum Spaß)
Je nach Ihren Bedürfnissen, die Sie tun sollten, entweder a = strdup(p); (a ist jetzt dynamisch zugewiesenen) oder strcpy(a, p); (meint a weist bereits auf einen Puffer von ausreichender Größe). Kombiniert man diese nennt, ist sinnlos.
ich habe diesen code von irgendwo....ich wusste nicht, über strdup () - Funktion und auch Sie sagte, es gibt Chancen auf memory leaks...ich wusste nicht, dass strdup wird, benutzen Sie malloc-und Speicher dachte ich, es wird eine temporäre variable ....so wird es aus dem Speicher entfernt werden, wenn Umfang, die Funktion endet.

InformationsquelleAutor lokesh | 2011-09-09

Schreibe einen Kommentar