̸CÖÐscanfÏÝÚå
ÔÎĵØÖ·£ºhttp://westsoftware.blog.163.com/blog/static/2609410920091953456841/
×î½üÒ»Ö±ÔÚ¿´Andrew KoeningдµÄÊé¼®£¬¿ÉÒÔ˵ѧϰC/C++»òÕß´ÓÊÂÕâ·½ÃæµÄ¿ª·¢µÄÈËÔ±·Ç³£ÖµµÃÒ»¿´µÄÊé¼®£¬ÕâÀïÎÒÍÆ¼ö¿´¿´¡¶CÏÝÚåÓëȱÏÝ¡·Óë¡¶C/C++³Á˼¼¡·¡£
ÕâÀïÏÈÀ´¿´¿´¡¶CÏÝÚåÓëȱÏÝ¡·Ò»¶Î´úÂë¡£
#include <stdio.h>
int main()
{
int i;
char c;
//printf("i address:%ld\n",&i);
//printf("c address:%ld\n",&c);
for(i=0 ; i<5; i++)
{
scanf("%d",&c);
printf("%d ",i);
}
return 0;
}
Õâô¾«Ð¡µÄÒ»¶Î´úÂ룬¿´¿´ÔËÐнá¹û½«»áÊÇʲô£¿Çë¿´Çå³þCÊÇ×Ö·û±äÁ¿¡£
¸Õ¿ªÊ¼µÄʱºò£¬¶ÔËû½²µÄ¶«Î÷²»ÊǺÜÃ÷°×£¬ÎªÁ˸ü¼ÓÇå³þ£¬·ÖÎöÏà¹ØÄÚ´æ½á¹¹¡£
ÓÉÓÚscanfÖ¸ÏòµÄÊÇÒ»¸öÕûÐÎÖ¸Õ룬´ËʱC½ÓÊÕ×Ö·û¼È룬ËùÒÔÔÚ¸øCÊäÈëÊý¾ÝµÄÊý¾ÝµÄʱºò£¬»á½«iµÄһЩÄÚ´æµØÖ·½øÐи²¸Ç£¬Ôõô¸²¸ÇµÄÄØ£¿ÔÚFC6Ï£¬»á½«iµÄµÍ¶ËµØÖ·¸²¸Ç³ÉCµÄ¸ß¶ËµØÖ·£¬²»ÖªµÀÕâô˵Äܲ»ÄÜÃ÷°×£¿¾ÍÊÇ˵Cʵ¼Ê½ÓÊÕÁËÒ»¸öÕûÐαäÁ¿£¬µ«ÊÇC´æ²»Ï£¬¶à³öµÄÄDz¿·ÖÔõô°ìÄØ£¿¾Í½«CµÄ¸ß¶ËµØÖ·Î»¸²¸Ç³ÉIµÄµÍ¶ËµØÖ·Î»ÁË£¬ËùÒÔIµÄÖµÒ»Ö±¶¼ÊÇ0£¬ËùÒÔÔÚÔËÐд˳ÌÐòÊÇÒ»¸öËÀÑ»·×´Ì¬¡£
ÉÏÃæ×¢Ê͵ôÄÇÁ½¶Î£¬¿ÉÒÔ´òÓ¡¿´¿´CÓëIµÄµØÖ·¡£ÎÒÕâÀï´òÓ¡µÄµØÖ·ÊÇÁ¬ÐøµÄ¡£
µ«ÊÇÔÚVC6ÖУ¬ÊÇ¿ÉÒÔÕý³£ÔËÐеģ¬Õâ¾ÍÊÇÎÒ˵µÄÄÚ´æµØÖ·¸²¸Ç·½Ê½²»Ò»Ñù£¬»»¾ä»°Ëµ£¬Ôõô¸²¸ÇÊÇÓбàÒëÆ÷¾ö¶¨£¬ÕâÀïÎÒÊÇÕâô²ÂÏ룬VC¸²¸ÇÄÚ´æµÄʱºòÊÇCµÄ×ó³¹µÄÄǶÎÄÚ´æ¶ø²»¸²¸ÇIµÄÄÚ´æµØÖ·£¬ËùÒÔÔÚVCÖÐÄÜÕý³£¡£
ÕâÒ²ÊÇÒ»¸ö²ÂÏ룬µ¡ÓÚ֤ʵ¡£¶øÔÚFCÖÐÊÇ“ÍùÓÒ”½øÐи²¸Ç¡£
ËùÒÔ¿ª·¢µÄʱºò£¬Ò»¶¨Òª×¢Ò⣬ÕâÖÖÏÝÚåÒ»µ©×ß½øÈ¥µÄ£¬¾ÍºÜÄѵ÷ÊÔ£¬ÓÐʱºòÒ²ÓÐÒ»ÖÖ“´ÕÇÉ”À´±Ü¿ªÕâ¸öÎÊÌ⣬²î´í¾Í¸ü¼Ó²»ºÃ²é¡£Ï£ÍûÔÚÒԺ󿪷¢µÄʱºòÄܸø´ó¼ÒÓÐÒ»¶¨µÄ²Î¿¼¡£
Ïà¹ØÎĵµ£º
1.ÒýÑÔ
¡¡¡¡C++ÓïÑԵĴ´½¨³õÖÔÊÇ“a better C”£¬µ«ÊÇÕâ²¢²»Òâζ×ÅC++ÖÐÀàËÆCÓïÑÔµÄÈ«¾Ö±äÁ¿ºÍº¯ÊýËù²ÉÓõıàÒëºÍÁ¬½Ó·½Ê½ÓëCÓïÑÔÍêÈ«Ïàͬ¡£×÷ΪһÖÖÓûÓëC¼æÈݵÄÓïÑÔ£¬C++±£ÁôÁËÒ»²¿·Ö¹ý³ÌʽÓïÑÔµÄÌØµã£¨±»ÊÀÈ˳ÆÎª“²»³¹µ×µØÃæÏò¶ÔÏ󔣩£¬Òò¶øËü¿ÉÒÔ¶¨Òå²»ÊôÓÚÈκÎÀàµÄÈ«¾Ö±äÁ¿ºÍº¯Êý¡£µ«ÊÇ£¬C++±Ï¾ ......
±¾ÎĵÄÄÚÈÝÊÇ Win32 API£¨ÌرðÊǽø³Ì¡¢Ï̺߳͹²ÏíÄÚ´æ·þÎñ£©µ½ POWER ÉÏ Linux µÄÓ³Éä¡£±¾ÎÄ¿ÉÒÔ°ïÖúÄúÈ·¶¨ÄÄÖÖÓ³Éä·þÎñ×îÊʺÏÄúµÄÐèÒª¡£×÷ÕßÏòÄúÏêϸ½éÉÜÁËËûÔÚÒÆÖ² Win32 C/C++ Ó¦ÓóÌÐòʱÓöµ½µÄ API Ó³Éä¡£
¸ÅÊö
Óкܶ෽ʽ¿ÉÒÔ½« Win32 C/C++ Ó¦ÓóÌÐòÒÆÖ²ºÍÇ¨ÒÆµ½ pSeries ƽ̨¡£Äú¿ÉÒÔʹÓÃÃâ·ÑÈí¼þ»òÕßµÚÈý·½¹¤¾ßÀ´ ......
Ò»¡¢ º¯Êý²ÎÊý´«µÝ»úÖÆµÄ»ù±¾ÀíÂÛ ¡¡¡¡º¯Êý²ÎÊý´«µÝ»úÖÆÎÊÌâÔÚ±¾ÖÊÉÏÊǵ÷Óú¯Êý£¨¹ý³Ì£©ºÍ±»µ÷Óú¯Êý£¨¹ý³Ì£©ÔÚµ÷Ó÷¢Éúʱ½øÐÐͨÐŵķ½·¨ÎÊÌâ¡£»ù±¾µÄ²ÎÊý´«µÝ»úÖÆÓÐÁ½ÖÖ£ºÖµ´«µÝºÍÒýÓô«µÝ¡£ÒÔÏÂÌÖÂ۳Ƶ÷ÓÃÆäËûº¯ÊýµÄº¯ÊýΪÖ÷µ÷º¯Êý£¬±»µ÷Óõĺ¯ÊýΪ±»µ÷º¯Êý¡£¡¡¡¡Öµ´«µÝ£¨passl-by-value£©¹ý³ÌÖУ¬±»µ÷º¯ÊýµÄÐÎʽ²Î ......
ΪʲôÐèҪʹÓÃextern "C"ÄØ£¿C++Ö®¸¸ÔÚÉè¼ÆC++֮ʱ£¬¿¼Âǵ½µ±Ê±ÒѾ´æÔÚÁË´óÁ¿µÄC´úÂ룬ΪÁËÖ§³ÖÔÀ´µÄC´úÂëºÍÒѾдºÃC¿â£¬ÐèÒªÔÚC++Öо¡¿ÉÄܵÄÖ§³ÖC£¬¶øextern "C"¾ÍÊÇÆäÖеÄÒ»¸ö²ßÂÔ¡£
¡¡¡¡ÊÔÏëÕâÑùµÄÇé¿ö:Ò»¸ö¿âÎļþÒѾÓÃCдºÃÁ˶øÇÒÔËÐеúÜÁ¼ºÃ£¬Õâ¸öʱºòÎÒÃÇÐèҪʹÓÃÕâ¸ö¿âÎļþ£ ......