Q: 7.7 ΪʲôһЩ´úÂëСÐĵØ×ª»»mallocµÄ·µ»ØÖµÎª±»·ÖÅäµÄÖ¸ÕëÀàÐÍ£¿


A: ÔÚANSI/ISO±ê×¼CÒýÈëvoid*ͨÓÃÖ¸ÕëÀàÐÍ֮ǰ£¬ÕâЩת»»µäÐ͵ر»ÓÃÀ´£¬ÔÚ²»¼æÈÝÖ¸ÕëÀàÐͼ丳ֵʱÏû³ý¾¯¸æ£¨¿ÉÄÜ´ÙʹÀàÐÍת»»£©¡£

ÔÚANSI/ISO±ê×¼CÏ£¬ÕâЩת»»²»ÔÙÐèÒª¡£ËüÃÇÏÖÔÚ±»²»¹ÄÀøÊ¹Óã¬Ò²ÊÇÓÐÕùÒéµÄ£»²Î¼ûÎÊ´ð7.7b¡£¶øÇÒ£¬Á¼ºÃ¶¨ÒåµÄ£¬µÍ·çÏÕµÄÒþʽת»»£¨±ÈÈçÄÇЩCÒ»Ö±ÔÚÕûÊýºÍ¸¡µãÊýÀàÐÍ¼ä½øÐеģ©»á±»¿¼ÂÇ×÷Ϊһ¸öÌØÐÔ¡£

ÁíÒ»·½Ã棬һЩ³ÌÐòԱϲ»¶ÏÔʽ½øÐÐÿһ¸öת»»£¬ÒԼǼËûÃÇÒѾ­¿¼ÂǹýÿһÖÖÇé¿ö£¬²¢ÇÒÒÑÕýÈ·¾ö¶¨Á˽«·¢ÉúʲôÊÂÇ飨²Î¼ûÎÊ´ð17.5£©¡£Í¬Ñù£¬ÔÚCÖÐÕâЩת»»ÒòΪijÖÖÔ­Òò£¬µäÐ͵ØÊÇΪÁËÓëC++¼æÈÝ£¬ÔÚÄÇÀï¶Ôvoid*µÄÏÔʽת»»ÊDZ»ÒªÇó¡£

£¨Ë³±ãÌá¼°£¬K&R2ÔÚ6.5ºÍ7.8.5½Ú½¨Òé˵£¬¶ÔÕâЩת»»µÄÐèÒªÊÇÌ«¹ýÈÈÐÄÁË¡££©

ÔÚijÖ̶ֳÈÉÏ£¬ÄãÊÇ·ñʹÓÃÕâÀàת»»ÊÇÒ»ÖÖ·ç¸ñÎÊÌ⣻²Î¼ûÎÊ´ðµÚ17½Ú¡£

²¹³äÁ´½Ó£ºMark BraderµÄ½øÒ»²½½âÊÍ¡£

²Î¿¼£ºH&S Sec. 16.1 pp. 386-7


(This Chinese translation isn't confirmed by the author, and it isn't for profits.)

Translator : jhlicc@gmai1.c0m
Origin : http://www.c-faq.com/malloc/cast.html