Tag: free
free ist eine Funktion zum freigeben von Speicher erhalten Sie von malloc und andere Funktionen in C.
Verwenden Sie nicht diese Bezeichnung für freie software. Fragen, für die software-Empfehlung ist off-topic auf Stack Overflow. Wenn Sie eine Frage haben über freie software, Sie können Fragen hier:https://softwarerecs.stackexchange.com/
3
Antworten
Angenommen, stieß ich auf eine Instanz in einem Programm, wo ich möchte, entweder kostenlos ein NULL-Zeiger ist, oder prüfen Sie zuerst, ob es NULL ist, und überspringen Sie die free() Aufruf der Funktion. Wäre es effizienter, einfach
3
Antworten
typedef struct _PERSON { size_t age; unsigned char* name; }PERSON; int init(PERSON** person) { (* person) = (PERSON *) malloc(sizeof(struct _PERSON)); (* person)->age = 1; (* person)->name = (unsigned char *) malloc(sizeof(4)); (* person)->name = "NAME"; return
7
Antworten
Ich habe ein Programm, das im Grunde aussieht: typedef struct cpl_def { int A; int B; int OK; struct cpls *link; }cpls; int main(void) { int n1, n2; int num = 300; /* say */ int *a;
1
Antworten
Ich versuche zu reservieren Gerätespeicher zu kopieren, führen Sie die Berechnungen auf die GPU kopieren Sie die Ergebnisse zurück und dann frei bis das Gerät die Erinnerung, die ich zugeordnet. Ich wollte sichergehen, dass ich nicht gehen
2
Antworten
Ich habe Probleme beim freigeben von Speicher, der ich zugeteilt mit malloc. Das Programm läuft gut, bis er den Teil, wo es soll Speicher freigeben mit free. Hier das Programm friert ein. So Frage ich mich, was
4
Antworten
Dazu ein kurzes code-snippet, mit zwei Aufrufe exit(3) im Falle des Scheiterns. Diese Anrufe freigeben Speicher von malloc? Die Google-Suche einmal sagt, es tut, und noch mal, es ist nicht... Sollte ich das free()? Außerdem: was ist
6
Antworten
Ich habe diesen code in Delphi 4. Erstellt habe ich 10 Objekte vom Typ T_Charge (siehe unten), die ich Hinzugefügt, um eine TList namens myList. Die T_Charge Typ hat Referenzen auf drei Objekte vom Typ T_Platte (siehe
8
Antworten
Heute, ich schien für ein interview und der interviewer fragte mich, Sagen Sie mir die Schritte, wie Sie entwerfen Sie Ihre eigenen free( ) Funktion für freigeben des allokierten Speichers. Wie kann es effizienter sein, als der
3
Antworten
Wie der freie Speicher etwa so Aussehen (Visual Studio 2008 - Win32/Konsole): Ich kann auch nur: iostream #include <iostream> void data_t(char *test) { test[0] = new char; test[1] = new char; test[0] = "Test1"; test[1] = "Test2";
6
Antworten
Können einen Anruf zu free() scheitern in irgendeiner Weise? Beispiel: free(NULL); Was ist "null " frei"? InformationsquelleAutor Taichman | 2011-03-15
7
Antworten
Ich bin das senden einer text-Datei - client-server Trennung der text in Pakete, die jeweils 512 bytes aber einige Pakete, die text enthalten weniger als max Größe, damit auf der Server-Seite beim Empfang jedes Paket, ich bin
3
Antworten
Oder besser gesagt, wie funktioniert strtok produzieren den string, auf den der Rückgabewert zeigt? Hat es Speicher dynamisch? Ich Frage, weil ich nicht sicher bin, wenn ich brauche, um das gratis-token in der folgenden code: Den STANDARD_INPUT
4
Antworten
Habe ich eine Struktur, die Sie unten sehen: typedef struct _List { Person *person; //pointer for people list DoList *do; //Kinda timer, for checking list in some intervals } List; Gibt es keine Notwendigkeit, diese Struktur? Wenn
5
Antworten
void getFree(void *ptr) { if(ptr != NULL) { free(ptr); ptr = NULL; } return; } int main() { char *a; a=malloc(10); getFree(a); if(a==NULL) printf("it is null"); else printf("not null"); } Warum ist die Ausgabe dieses Programms, die
2
Antworten
Valgrind sagt mir, dass es ein Leck in einem Speicher, ich habe versucht, free (), aber ich nehme an, dass es nicht richtig gemacht. Irgendwelche Ideen? Danke. Ungültige free() /delete /delete /realloc() bei 0x4C27D4E: kostenlos (vg_replace_malloc.c:427) durch
3
Antworten
Erstellt habe ich eine Funktion entwickelt, um Benutzereingaben. Es erfordert, dass der Speicher zugewiesen werden, über die variable halten Sie die Benutzer-Eingabe; allerdings ist die variable zurückgegeben, die am Ende der Funktion. Was ist die richtige Methode,
3
Antworten
Ich bin neu in der Programmiersprache C, so können Sie mir sagen, ob dies die richtige Art und Weise zu tun. zum Beispiel: Programm-Punkte für den Puffer und ich benutze pointer als parameter in free() Funktion. Also,
5
Antworten
Ich habe eine Frage zu Zeigern in C. Jeder Zeiger hat 4 bytes im Speicher (Adresse). Wenn ich malloc() nur Speicher reserviert, und setzen Sie die Adresse auf den Zeiger, auch free() nur befreit den Speicher, der
3
Antworten
Sagen, ich habe ein array von Zeigern auf Strukturen, die eine Zeichenfolge enthalten jeden und so etwas wie dieses: printf("%s\n", array[0]); Ausgabe: Hello. Wenn ich eine free(array) wird das frei, was array[0] verweist? ("Hello."). Habe ich Stunden
9
Antworten
Angenommen, ich habe ein 2-dimensionales array, das erstellt wurde, mit etwas wie dieses, char **foo = (char **) malloc(height * sizeof(char *)); for(i = 0; i <= height; i++) foo[i] = (char *) malloc (width * sizeof(char
4
Antworten
Ich versuche zu verstehen malloc() besser ist, wenn es um die verknüpfte Liste. Diese neue Speicher für den Zeiger auf die Liste, sowie den Bereichen innerhalb der it? Wie: SomeStruct * someStructPtr = (SomeStruct *) malloc(sizeof(SomeStruct)); Neben
3
Antworten
Nehme an, ich habe das folgende Programm: #include <stdio.h> int main () { FILE * pFile; pFile = fopen ("myfile.txt","r"); fclose (pFile); //This never happens: free(pFile) return 0; } Ich habe nie gesehen, ein Programm, das keine
2
Antworten
Ich bin ziemlich neu in C und ich kann nicht scheinen, um herauszufinden, was scheint, eine ziemlich einfache pointer-problem. Mein Programm fügt Zeilennummern in eine Datei. Es liest die Datei zeilenweise ein und fügt dann eine Zeilennummer
2
Antworten
Ich habe Folgendes problem mit diesem segment des Codes. Kann jemand bitte helfen? Hinweis: QueueItem erstellt wird auf einem anderen thread. WorkItem * Dequeue(Queue ** Q) { if(QueueIsEmpty(*Q)) return NULL; QueueItem * tmp = (*Q)->Head; (*Q)->Head =
1
Antworten
Ich bin immer dieser Fehler vidprocess: malloc.c:2451: sYSMALLOc: Assertion (old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk,
2
Antworten
Mache ich viele Fehler in der test-Programm!!!!!! debug-src: http://www.cppblog.com/Files/mymsdn/cvector-windows-has-triggered-a-breakpoint-in-cvector.zip rechts, version: http://www.cppblog.com/Files/mymsdn/cvector-svn-version-10.zip Bin ich zu schreiben versucht, eine C-Sprache-version von Vektor-struction. Wenn ich versuche ausführen (die in Microsoft Visual Studio 2008 Standard Tastenkombination ist STRG+F5) mein code.
1
Antworten
Ich versuche zum einrichten eines array von strings (in C unter Linux). Das array wird halt 11-strings (statische Länge). Ich hatte zunächst das array eingerichtet: char Answers[10][100]; aber in meinem code habe ich ein Teil, das nennt
3
Antworten
Sagen, ich habe ein array von Zeigern auf Strukturen, die eine Zeichenfolge enthalten jeden und so etwas wie dieses: printf("%s\n", array[0]); Ausgabe: Hello. Wenn ich eine free(array) wird das frei, was array[0] verweist? ("Hello."). Habe ich Stunden
9
Antworten
Angenommen, ich habe ein 2-dimensionales array, das erstellt wurde, mit etwas wie dieses, char **foo = (char **) malloc(height * sizeof(char *)); for(i = 0; i <= height; i++) foo[i] = (char *) malloc (width * sizeof(char
2
Antworten
Ich bin dabei ein Programm zum darstellen einer Tabelle "Schüler". Es hat die Attribute 'ID', 'Vorname' und 'Nachname'. Ich habe ein zweidimensionales array und setzen cout-Anweisungen alle ganz zu schauen... Die richtige info gespeichert IST, in die
2
Antworten
Ich versuche zu bekommen hängen von OpenCV. Im moment bin ich versucht, zu subtrahieren zwei Bilder von einander und das Ergebnis anzeigen. Ich habe gefunden, Beispiel-code, die machen das einfach gut. Mein problem ist, dass ich immer
2
Antworten
Folgende Funktion deleteNode wenn ich das Programm bekommt diese: * glibc detected free(): invalid next size (normal): 0x000000000103dd90 ** Sogar ich machen das kostenlos(hier), " ein Kommentar,bekomme ich die obige Meldung. Ich glaube nicht, dass die anderen
3
Antworten
int getmin(int a, int b) { return a<b?a:b; } void *reallocation(void *ptr, size_t size) //size_t in bytes { void *newptr; int msize; msize = getsize(ptr); msize = getmin(msize, size); printf("msize = %d", msize); newptr = malloc(size); newptr
1
Antworten
Habe ich gelesen über ähnliche Probleme, aber ich kann nichts finden, die speziell für Adressen mein problem (oder ich habe Sie einfach nicht verstehen, die anderen Lösungen) Ich versuche zu implementieren Sie eine template-Stack-Klasse und habe ein
3
Antworten
Erstelle ich ein dynamisches array in c mit malloc. z.B.: myCharArray = (char *) malloc(16); nun, wenn ich eine Funktion wie diese und übergeben Sie myCharArray: reset(char * myCharArrayp) { free(myCharArrayp); } wird, dass die Arbeit, oder
2
Antworten
Ich bin immer das vertraute free(): invalid pointer-Fehler. In der versucht, zu Debuggen, landete ich auskommentieren jeder free() in meinem code, eins nach dem anderen, , bis es gab keine Links und ich bin noch immer dieser
3
Antworten
Habe ich diesen seltsamen Fehler gefunden, die von valgrind auf eine (dumme) Authentifizierungs-Modul, das macht einige auf Heapzuweisungen. ==8009== Invalid free() / delete / delete / realloc() ==8009== at 0x4C2A739: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==8009== by 0x40263F: authenticate
4
Antworten
gcc 4.4.4 c89 Ich habe ein Programm, dass ich die Prüfung. Ich erstellen Sie eine struct-Objekt mit dem Namen devname und Speicher, so dass ich kann Sie füllen die Elemente. Ich anzeigen und dann den Speicher frei,
3
Antworten
Ich mit dieser Methode konvertieren Sie die Werte aus einer Liste in ein array für die Verwendung in einer execvp()-Systemcall: char **list2argarray(struct shellvalue *values, int count) { char **array = (char **)malloc((count + 1) * sizeof(char *));
5
Antworten
Möchte ich freien Speicher von meinem zugewiesenen binären Baum, was traversal ist die beste dafür? typedef struct Node{ struct Node * right; struct Node * left; void * data; }Node; typedef int (*cmp) (void*,void *); Node* init(void
4
Antworten
Ich weiß, die Kostenlose operation in C ist zu sagen, der compiler diese bestimmten Speicherblock frei ist für den compiler zu verwenden, für die weitere Zuordnung, aber der Speicher wird nicht freigegeben. Was über das löschen in
1
Antworten
Dieser code, der Zufallszahlen generiert und dann produziert ein Histogramm basierend auf Eingabe, um die Funktionen in Bezug auf die Intervalle. "bins" repräsentiert die Histogramm-Intervalle und "bin_counts" enthält die Anzahl der Zufallszahlen in einem bestimmten Intervall. Habe
2
Antworten
Meine Website hat eine Seite, die ich analysieren kann bestimmte Protokolle durch das ausfüllen von Formular-Felder und drücken Sie die Schaltfläche "senden".Manchmal habe ich zu analysieren 100 verschiedene Protokolle(werden automatisch heruntergeladen, die von meiner Website aus einem
1
Antworten
Ich entschuldige mich für den langen code. Ich habe eine einfache Frage, aber ich dachte, dass ich mein code, so wird es klar sein wo ich herkomme. Ich bekomme ein realloc Korruption. Ich denke, die Korruption ist,
4
Antworten
Schrieb ich eine einfache url-parser mit strtok(). hier ist der code #include <stdio.h> #include <stdlib.h> typedef struct { char *protocol; char *host; int port; char *path; } aUrl; void parse_url(char *url, aUrl *ret) { printf("Parsing %s\n", url);
4
Antworten
Ich möchte bestätigen, ob cv::Mat::release() Methode ist ähnlich free() in C-Programmierung, D. H., seine freigibt die Matrix-Daten aus dem Speicher. In bestimmten, würde ich mag, um zu verstehen, das Verhalten der Methode mit Bezug auf Speicher-Lecks und
4
Antworten
Habe ich eine Klasse wie folgt struct CliHandler { CliHandler(int argc, char** argv); ~CliHandler(); int doWork(); int argc_; char** argv_; private: CliHandler(const CliHandler&){} CliHandler& operator=(const CliHandler&){} }; //Konstruktor CliHandler::CliHandler(int argc, char** argv) { //set command line parameters
7
Antworten
Bekomme ich einen segmentation fault nach freeing eine bestimmte Zeiger: free(studentDB->name); Ich kann seinen Wert ohne Fehler oder Warnungen: printf("[DBG] studentDB->name: %s\n", studentDB->name); Jedoch, wie gesagt, das Programm stürzt ab, wenn ich versuche, Sie zu befreien. Was
8
Antworten
Ich habe gerade angefangen mit C und haben sehr wenig wissen über performance-Probleme mit malloc() und free(). Meine Frage ist: wenn ich call malloc() gefolgt von free() innerhalb einer while Schleife, Schleifen für, sagen wir, 20 Iterationen,
7
Antworten
Der code funktioniert wie es soll, obwohl es nie befreit den Speicher malloc(). Habe ich versucht freien Speicher in jedem Ort, den ich kann, aber egal wo ich es mache, es bricht das Programm. Konkret habe ich