11
जब मैं इस तरह मेरा कार्यक्रम इसकी हो रही त्रुटि निष्पादित करने के लिए कोशिश कर रहा हूँ -यह त्रुटि क्या सुझाती है?
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==
लाइन नहीं -
sendip: malloc.c:4631: _int_malloc: Assertion `(unsigned long)(size)
>= (unsigned long)(nb)' failed
valgrind के माध्यम से त्रुटि पर कब्जा करने की कोशिश की, यह एक मिला है। 435
datalen = stringargument(gnuoptarg, &datarg);
/*This is the line*/ data=(char *)malloc(datalen);
memcpy(data, datarg, datalen);
यदि आवश्यक हो तो मैं कोड के अन्य टुकड़े जोड़ सकता हूं ... लेकिन मुझे इससे बाहर निकलने में मदद करें ??? यह क्या है मुझे कोई सुराग नहीं मिल रहा है ..
इस तरह की आवाज़ें आपके प्रोग्राम की तरह ही स्मृति से बाहर चल रही हैं। 'Datalen' कितना बड़ा है? – Chriszuma