dz̸CÖеÄmallocºÍfreeº¯Êý
Ò»¡¢malloc()ºÍfree()µÄ»ù±¾¸ÅÄîÒÔ¼°»ù±¾Ó÷¨
1¡¢º¯ÊýÔÐͼ°ËµÃ÷
void *malloc(long NumBytes)£º¸Ãº¯Êý·ÖÅäÁËNumBytes¸ö×Ö½Ú£¬²¢·µ»ØÁËÖ¸ÏòÕâ¿éÄÚ´æµÄÖ¸Õë¡£Èç¹û·ÖÅäʧ°Ü£¬Ôò·µ»ØÒ»¸ö¿ÕÖ¸Õ루NULL£©¡£ ¹ØÓÚ·ÖÅäʧ°ÜµÄÔÒò£¬Ó¦¸ÃÓжàÖÖ£¬±ÈÈç˵¿Õ¼ä²»×ã¾ÍÊÇÒ»ÖÖ¡£
void free(void *FirstByte)£º ¸Ãº¯ÊýÊǽ«Ö®Ç°ÓÃmalloc·ÖÅäµÄ¿Õ¼ä»¹¸ø³ÌÐò»òÕßÊDzÙ×÷ϵͳ£¬Ò²¾ÍÊÇÊÍ·ÅÁËÕâ¿éÄڴ棬ÈÃËüÖØÐµõ½×ÔÓÉ¡£
2¡¢º¯ÊýµÄÓ÷¨
ÆäʵÕâÁ½¸öº¯ÊýÓÃÆðÀ´µ¹²»ÊǺÜÄÑ£¬Ò²¾ÍÊÇmalloc()Ö®ºó¾õµÃÓù»Á˾Í˦ÁËËü°ÑËü¸øfree()ÁË¡£
// Code...
char *Ptr = NULL;
Ptr = (char *)malloc(100 * sizeof(char));
if (NULL == Ptr)
{
exit (1);
}
gets(Ptr);
// code...
free(Ptr);
Ptr = NULL;
µ±È»£¬¾ßÌåÇé¿öÒª¾ßÌå·ÖÎöÒÔ¼°¾ßÌå½â¾ö¡£±ÈÈç˵£¬Ä㶨ÒåÁËÒ»¸öÖ¸Õ룬ÔÚÒ»¸öº¯ÊýÀïÉêÇëÁËÒ»¿éÄÚ´æÈ»ºóͨ¹ýº¯Êý·µ»Ø´«µÝ¸øÕâ¸öÖ¸Õ룬ÄÇôҲÐíÊÍ·ÅÕâ¿éÄÚ´æÕâÏ×÷¾ÍÓ¦¸ÃÁô¸øÆäËûº¯ÊýÁË¡£
3¡¢¹ØÓÚº¯ÊýʹÓÃÐèҪעÒâµÄһЩµØ·½
A¡¢ÉêÇëÁËÄÚ´æ¿Õ¼äºó£¬±ØÐë¼ì²éÊÇ·ñ·ÖÅä³É¹¦¡£
B¡¢µ±²»ÐèÒªÔÙʹÓÃÉêÇëµÄÄÚ´æÊ±£¬¼ÇµÃÊÍ·Å£»ÊͷźóÓ¦¸Ã°ÑÖ¸ÏòÕâ¿éÄÚ´æµÄÖ¸ÕëÖ¸ÏòNULL£¬·ÀÖ¹³ÌÐòºóÃæ²»Ð¡ÐÄʹÓÃÁËËü¡£
C¡¢ÕâÁ½¸öº¯ÊýÓ¦¸ÃÊÇÅä¶Ô¡£Èç¹ûÉêÇëºó²»ÊͷžÍÊÇÄÚ´æÐ¹Â¶£»Èç¹ûÎÞ¹ÊÊÍ·ÅÄǾÍÊÇʲôҲûÓÐ×ö¡£ÊÍ·ÅÖ»ÄÜÒ»´Î£¬Èç¹ûÊÍ·ÅÁ½´Î¼°Á½´ÎÒÔÉÏ»á³öÏÖ´íÎó£¨ÊÍ·Å¿ÕÖ¸ÕëÀýÍ⣬ÊÍ·Å¿ÕÖ¸ÕëÆäʵҲµÈÓÚɶҲû×ö£¬ËùÒÔÊÍ·Å¿ÕÖ¸ÕëÊͷŶàÉٴζ¼Ã»ÓÐÎÊÌ⣩¡£
D¡¢ËäÈ»malloc()º¯ÊýµÄÀàÐÍÊÇ(void *),ÈκÎÀàÐ͵ÄÖ¸Õë¶¼¿ÉÒÔת»»³É(void *),µ«ÊÇ×îºÃ»¹ÊÇÔÚÇ°Ãæ½øÐÐÇ¿ÖÆÀàÐÍת»»£¬ÒòΪÕâÑù¿ÉÒÔ¶ã¹ýһЩ±àÒëÆ÷µÄ¼ì²é¡£
¶þ¡¢malloc()µ½µ×´ÓÄÄÀïµÃÀ´ÁËÄÚ´æ¿Õ¼ä
1¡¢malloc()µ½µ×´ÓÄÄÀïµÃµ½ÁËÄÚ´æ¿Õ¼ä£¿
´ð°¸ÊÇ´Ó¶ÑÀïÃæ»ñµÃ¿Õ¼ä¡£Ò²¾ÍÊÇ˵º¯Êý·µ»ØµÄÖ¸ÕëÊÇÖ¸Ïò¶ÑÀïÃæµÄÒ»¿éÄÚ´æ¡£²Ù×÷ϵͳÖÐÓÐÒ»¸ö¼Ç¼¿ÕÏÐÄÚ´æµØÖ·µÄÁ´±í¡£µ±²Ù×÷ϵͳÊÕµ½³ÌÐòµÄÉêÇëʱ£¬¾Í»á±éÀú¸ÃÁ´±í£¬È»ºó¾ÍѰÕÒµÚÒ»¸ö¿Õ¼ä´óÓÚËùÉêÇë¿Õ¼äµÄ¶Ñ½áµã£¬È»ºó¾Í½«¸Ã½áµã´Ó¿ÕÏнáµãÁ´±íÖÐɾ³ý£¬²¢½«¸Ã½áµãµÄ¿Õ¼ä·ÖÅ䏸³ÌÐò¡£
2¡¢Ê²Ã´ÊǶѣº¶ÑÊÇ´ó¼Ò¹²ÓеĿռ䣬·ÖÈ«¾Ö
Ïà¹ØÎĵµ£º
ÔÚº¯ÊýÌåÖÐÌí¼ÓÒÔÏ´úÂë:×¢£ºmemcpyÖеÄbitmapΪbmpÉú³ÉµÄcÎļþÊý×éÃû
int width = 533;
int height = 615;
BYTE* DDBdata=new BYTE[width*height*2];
BYTE* DIBdata;
memcpy(DDBdata,(void *)bitmap,width*height*2);
  ......
ÎÒÖ»ÓÃÁËÆäÖеÄ15Ìõ£¬¾Í½ÚÊ¡ÁË40%µÄ¿Õ¼äÄØ£¬Ç¿ÁÒÍÆ¼ö
Ö÷Òª½²½²windows²Ù×÷ϵͳÔÚCÅ̿ռ䲻×ãµÄÇé¿öÏ£¬ÎÒÃÇ¿ÉÒÔͨ¹ýÄÇЩ¾ßÌåÊÖ¶ÎÀ´Ôö¼ÓCÅ̿ռ䡣
1.´ò¿ª“ÎҵĵçÄÔ”-“¹¤¾ß”-“Îļþ¼ÐÑ¡Ïî”-“²é¿´”-ÔÚ“ÏÔʾËùÓÐÎļþºÍÎļþ¼Ð”Ñ¡Ïîǰ´ò¹´-“È ......
C++µÄÀàÓëCÀïÃæµÄstructµÄÇø±ð
2009-10-11 15:32
¹ØÓÚʹÓôóÀ¨ºÅ³õʼ»¯
classºÍstructÈç¹û¶¨ÒåÁ˹¹Ô캯ÊýµÄ»°£¬¶¼²»ÄÜÓôóÀ¨ºÅ½øÐгõʼ»¯
Èç¹ûûÓж¨Òå¹¹Ô캯Êý£¬struct¿ÉÒÔÓôóÀ¨ºÅ³õʼ»¯¡£
Èç¹ûûÓж¨Òå¹¹Ô캯Êý£¬ÇÒËùÓгÉÔ±±äÁ¿È«ÊÇpublicµÄ»°£¬¿ÉÒÔÓôóÀ¨ºÅ³õʼ»¯¡£
¹ØÓÚĬÈÏ·ÃÎÊȨÏÞ
classÖÐĬÈϵijÉÔ±·ÃÎÊÈ ......
È¥ÁËÌËC¹«Ë¾INTviewÁËһϣ¬Ê±¼äÓеã¾ÃÁË£¬¸Ã°ÑһЩÊÕ»ñÕûÀíÒ»ÏÂÁË£¬ÃâµÃÒÔºóÔÙ·¸¡£ 1, ¸öÐÔÐÔ¸ñ·½ÃæµÄÌáÎÊÀýÈ磺¸öÈËȱµã£¬ÎªÊ²Ã´¾õµÃ×Ô¼º±È±ðÈËʤÈι¤×÷£¬¸öÈË×îÂúÒâµÄʵȵÈÖ®À࣬ҪÈÏÕæµÄ×¼±¸Ò»Ï¡£ 2£¬C¹«Ë¾µÄ¼¼ÊõÈËÔ±²Î²î²»Æë£¬²îµãµÄºÜ¿´ÖØÄãµÄ×ö¹ýµÄÏîÄ¿¾Ñ飬¶øÇÒÒÔÊýÁ¿È¡Ê¤£¬ÕâÒ²¸ø×¼±¸ÃæÊÔµÄͬѧÌáÁ˸öÐÑ£¬²»Ò ......