was bedeutet diese Fehlermeldung deuten?
Wenn ich versuche, mein Programm ausführen immer eine Fehlermeldung wie diese -
sendip: malloc.c:4631: _int_malloc: Assertion `(unsigned long)(size)
>= (unsigned long)(nb)' failed
Versucht erfassungsfehler durch valgrind,habe diese ein -
HEAP SUMMARY:
==3335== in use at exit: 24 bytes in 2 blocks
==3335== total heap usage: 111 allocs, 109 frees, 7,929 bytes allocated
==3335==
==3335== 4 bytes in 1 blocks are definitely lost in loss record 1 of 2
==3335== at 0x40268A4: malloc (vg_replace_malloc.c:236)
==3335== by 0x8049EEF: main (sendip.c:435)
==3335==
==3335== 20 bytes in 1 blocks are definitely lost in loss record 2 of 2
==3335== at 0x40268A4: malloc (vg_replace_malloc.c:236)
==3335== by 0x4031F57: ???
==3335== by 0x804A338: main (sendip.c:521)
==3335==
Linie nicht. 435
datalen = stringargument(gnuoptarg, &datarg);
/*This is the line*/ data=(char *)malloc(datalen);
memcpy(data, datarg, datalen);
Wenn nötig, ich könnte hinzufügen, andere Teile des Codes ... aber helfen mir immer aus dieser ??? Was ist dieses ich immer bin, keine Ahnung ..
Es Art von klingt wie dein Programm ist einfach der Speicher ausgeht. Wie groß ist
datalen
?InformationsquelleAutor Udit Gupta | 2011-10-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie überschrieben werden "Daten" und vergessen, zu befreien, die alten Inhalte... haben Sie diese überprüft?
InformationsquelleAutor Leandro Gomide