ÄÚ¸°ÀÌ c Áú¹®µå¸³´Ï´Ù..
malloc£¨£©ÇÔ¼ö¸¦ ÀÌ¿ëÇØ µ¿Àû ¸Þ¸ð¸® ÇÒ´çÀ» Çϰí free·Î ¸Þ¸ð¸®¸¦ ¹ÝȯÇÏ¿´´Âµ¥ CrtlsValidHeapPointer£¨block£©¿À·ù°¡ ¹ß»ýÇÏ¿© free¸Þ¸ð¸®¸¦ ¹ÝȯÇÏ´Â °úÁ¤¿¡¼ ¹«¾ð°¡°¡ À߸øµÇ¾ú´Ù´Â°ÍÀ» ¾Ë°Ú´Âµ¥, ¹«¾ùÀÌ À߸øµÇ¾ú´ÂÁö ¸ð¸£°Ú½À´Ï´Ù.
microsoft docs Âü°íÇØº¸·Á°í ÇØµµ ¾Æ´Â°Ô ¾øÀ¸´Ï ¤Ð¤Ð ÇØ¼®À» ¸øÇϰڴõ¶ó°í¿ä.°ü·Ã ¿À·ùÀÇ ¿øÀÎ ¹× Àǹ̸¦ ¾Ë ¼ö ÀÖÀ»±î¿ä?
---------------------------------------------------------------------------------------------------------
#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
//Æ÷ÀÎÅÍ¿¡ °ªµéÀ» ÀÔ·ÂÇÏ°í ±× °ªÀÌ Â¦¼öÀÎÁö ÆÇº°ÇÑ ÈÄ¿¡ ¦¼öÀÎ °æ¿ì ÇÕÇÑ´Ù.
void main£¨£©
{
int* p;//Æ÷ÀÎÅÍ º¯¼ö ¼±¾ð
int i;//¹Ýº¹¹® º¯¼ö
int count;//ÀÔ·ÂÇÒ °ªµéÀÇ °³¼ö
int sum=0;
printf£¨"´õÇÒ ¼öÀÇ °³¼ö¸¦ ÀÔ·ÂÇϼ¼¿ä: "£©;
scanf£¨"%d", &count£©; // ÀÔ·ÂÇÒ °ªµéÀÇ °¹¼ö¸¦ Á¤ÇÑ´Ù
p = £¨int*£©malloc£¨4 * count£©; //sizeofint=4 Á¤¼ö Å©±âÀÇ ¸Þ¸ð¸®¸¦ count°³¸¸Å È®º¸ÇÑ´Ù
for £¨i = 0; i < count; i++£©
{
scanf£¨"%d", p + i£©;
if £¨*£¨p + i£© % 2 == 0£©
{
sum = sum + *£¨p + i£©;
}
}
printf£¨"ÀÔ·ÂÇÑ ¼öµé Áß Â¦¼öµéÀÇ ÇÕÀº: "£©;
printf£¨"%d", sum£©;
for £¨i = 0; i < count; i++£©
{
free£¨p + i£©;
}
}
---------------------------------------------------------------