C/C++ÓïÑÔÖи÷ÖÖÊý¾ÝÀàÐͳ¤¶ÈµÄ×ܽá
ÏÂÃæÊÇÎÒ¹ØÓÚCÓïÑÔÖи÷ÖÖÊý¾ÝÀàÐͳ¤¶ÈµÄ×ܽ᣺(²Î¿¼The C Programming Language)
1. cÓïÑÔÖеÄÕûÊýÀàÐÍÓÐchar, short, int, longµÈ¼¸ÖÖ, ÏÂÃæÊÇCÓïÑÔ¶ÔÿÖÖÊý¾ÝÀàÐͳ¤¶ÈµÄ¹æ¶¨:
(a). shortºÍlongÀàÐ͵ij¤¶È²»Ïàͬ
(b). intÀàÐÍͨ³£Í¬¾ßÌå»úÆ÷µÄÎïÀí×Ö³¤Ïàͬ
(c). shortͨ³£ÊÇ16bits, intͨ³£ÊÇ16bits or 32bitsÿÖÖ±àÒëÆ÷¿ÉÒÔ¸ù¾ÝÓ²¼þµÄ²»Í¬×ÔÓÉÈ·¶¨, µ«ÊÇshortºÍint±ØÐë×îÉÙÊÇ16bits, ¶ølongÀàÐͱØÐë×îÉÙÊÇ32bits, ²¢ÇÒshort±ØÐë±ÈintºÍlongÀàÐÍÒª¶Ì¡£
2. sizeof() ÔËËã·û·µ»ØµÄÊÇÒ»ÖÖÊý¾ÝÀàÐÍÖÐËù°üº¬µÄ×Ö½ÚÊý(bytes), AnsiC¹æ¶¨sizeof(char)±ØÐë·µ»Ø1£¬µ±sizeof×÷ÓÃÓÚÊý×éʱ, ·µ»ØµÄÊÇÊý×éÖÐËùÓгÉÔ±ËùÕ¼µÄ×Ö½ÚÊý(×¢Òâ²¢²»ÊÇÊý×éÖгÉÔ±µÄ¸öÊý), µ±sizeof()×÷ÓÃÓڽṹÌåºÍ¹«ÓÃÌåʱ,·µ»ØµÄ²»½ö½öÊÇÊý¾Ý³ÉÔ±×ܵÄ×Ö½ÚÊý, »¹°üÀ¨±àÒëÆ÷ΪÁËʵÏÖ×Ö½Ú¶ÔÆä¶øÌî³äµÄÄÇЩ×Ö½Ú¡£
ÒÔǰд³ÌÐòÒ²ÒþÒþÔ¼Ô¼µÄ¶®µÃÕâЩ¹æÔò£¬µ«ÊÇÒ»Ö±ÒÔΪcharÀàÐͱØÐëÊÇ8bitsµÄ£¬µ«ÊÇ×î½ü×öÁËÒ»¸öǶÈëʽDSPÏîÄ¿£¬±àÒëÆ÷ÊÖ²áÉÏÃ÷Ã÷д×ÅcharÀàÐ;ÍÊÇ16bitsµÄ£¬ÎÞÄη³ö"The C Programming Language"Ò»²é²Å·¢ÏÖANSI C¶ÔÓÚcharÀàÐ͵ij¤¶È²¢Ã»ÓÐ×÷Ó²ÐԹ涨¡£ÒÔǰд³ÌÐò²»Ì«×¢ÒâÊý¾ÝÀàÐ͵ĿÉÒÆÖ²ÐÔ, Õâ´ÎÏîÄ¿ÖÐÓõ½µÄÒÔǰµÄ´úÂë¶¼ÒªÖØÐ¼ì²éÊý¾ÝÀàÐͳ¤¶ÈµÄÎÊÌâ¡£
C++Êý¾ÝÀàÐͳ¤¶ÈÎÊÌâ:
Ò»¡¢×Ö½ÚºÍ×Ö³¤
×Ö½Ú£¬°Ëλ¾ÍÊÇÒ»¸ö×Ö½Ú£¬Êǹ̶¨¸ÅÄî¡£×Ö³¤ÊÇÖ¸¼ÆËã»úÒ»´ÎÄÜ´¦ÀíµÄ¶þ½øÖÆÊý¾ÝµÄ³¤¶È£¬ÊÇÒ»¸ö·Ç¹Ì¶¨µÄ¸ÅÄî¡£ÀýÈ磬8λ¼ÆËã»úµÄ×Ö³¤Îª8£¬¼´Ò»¸ö×Ö½Ú£¬ 32λ¼ÆËã»úµÄ×Ö³¤Î»32£¬¼´4¸ö×Ö½Ú£¬Í¬Àí£¬64λ¼ÆËã»úµÄ×Ö³¤Îª64£¬¼´8×Ö½Ú¡£
¶þ¡¢C++ÖеÄÊý¾ÝÀàÐÍ
1¡¢×Ö·ûÐÍÊý¾Ýchar£¬¸ÃÀàÐÍʼÖÕÊÇÒ»¸ö×Ö½Ú³¤£¬¼´8λ¡£
2¡¢ÕûÐÎint¡¢¶ÌÕûÐÍshortºÍ³¤ÕûÐÎlong¡£Í¨³£intΪһ¸ö×Ö³¤£¬shortΪ°ë¸ö×Ö³¤£¬longΪһ¸ö»ò2¸ö×Ö³¤£¨ÔÚ32λ»úÆ÷ÖÐΪһ¸ö×Ö³¤£©¡£
3¡¢¸¡µãÐÍfloat¡¢Ë«¾«¶Èdouble¡¢ºÍ³¤Ë«¾«¶Èlong double£¬·Ö±ð±íʾµ¥¾«¶È¸¡µãÊý Ë«¾«¶È¸¡µãÊýºÍÀ©Õ¹¾«¶ÈµÄ¸¡µãÊýÖµ¡£µäÐÍÇé¿öÏ£¬float Ϊһ¸ö×Ö£¬doubleÊÇÁ½¸ö×Ö£¬long doubleΪÈý¸ö»òËĸö×Ö¡£
Ïà¹ØÎĵµ£º
1£© º¯ÊýÉùÃ÷
l CÈç¹û²»Ð´·µ»ØÖµ£¬Ä¬ÈÏÊÇint£¬¶øC++Öв»Äܲ»Ð´·µ»ØÖµ(¿ÉÓÃvoid±íʾÎÞ·µ»ØÖµ)¡£
ÈçFunc1();
l int Func1()ÔÚCÖбíʾ¿É´øÈÎÒâ²ÎÊýµÄº¯Êý£¬ÕâÊÇCµÄ©¶´£¬Ê¹µÃËü±Ü¿ªÁ˲ÎÊýÀàÐͼì²é£»¶øC++Öбíʾ²»´ ......
void mystery(int n)
{
n += 5;
n /= 10;
printf(" :%s\n","***********" + 10 -n);
}
µ±Ò»¸ö×Ö·û´®³£Á¿Î»ÓÚÒ»¸ö±í´ïʽÖÐʱ£¬ËüµÄÖµÊÇÒ»¸öÖ¸Õë³£Á¿¡£±àÒëÆ÷°ÑÕâЩָ¶¨×Ö·ûµÄÒ»·Ý¿½±´´æ´¢ÔÚÄÚ´æµÄij¸öλÖ㬲¢´æ´¢Ò»¸öÖ¸ÏòµÚ1¸ö×Ö·ûµÄÖ¸Õë¡£µ«ÊÇ£¬µ±Êý×éÃûÓÃÓÚ±í´ïʽÖÐʱ£¬ËûÃǵÄÖµÒ²ÊÇÒ»¸öÖ¸Õë³£Á¿ ......
ÔÖø£ºAndrew Koenig - AT&T Bell Laboratories Murray Hill, New Jersey 07094
·Ò룺lover_P
0 ¼ò½é
CÓïÑÔ¼°ÆäµäÐÍʵÏÖ±»Éè¼ÆÎªÄܱ»×¨¼ÒÃÇÈÝÒ×µØÊ¹Óá£ÕâÃÅÓïÑÔ¼ò½à²¢¸½Óбí´ïÁ¦¡£µ«ÓÐһЩÏÞÖÆ¿ÉÒÔ±£»¤ÄÇЩ¸¡ÔêµÄÈË¡£Ò»¸ö¸¡ÔêµÄÈË¿ÉÒÔ´ÓÕâЩÌõ¿îÖлñµÃһЩ°ïÖú¡£
&nbs ......
ÔÚCÓïÑÔÖУ¬ÐÞÊηûexternÓÃÔÚ±äÁ¿»òÕߺ¯ÊýµÄÉùÃ÷ǰ£¬ÓÃÀ´ËµÃ÷“´Ë±äÁ¿/º¯ÊýÊÇÔڱ𴦶¨ÒåµÄ£¬ÒªÔÚ´Ë´¦ÒýÓÔ¡£
Ò».externÐÞÊαäÁ¿µÄÉùÃ÷
¾ÙÀýÀ´Ëµ£¬Èç¹ûÎļþa.cÐèÒªÒýÓÃb.cÖбäÁ¿int v£¬¾Í¿ÉÒÔÔÚa.cÖÐÉùÃ÷extern int v£¬È»ºó¾Í¿ÉÒÔÒýÓñäÁ¿v¡£ÕâÀïÐèҪעÒâµÄÊÇ£¬±»ÒýÓõıäÁ¿vµÄÁ´½ÓÊôÐÔ±ØÐëÊÇÍâÁ´½Ó£¨external£ ......
CÓïÑÔ³ÌÐò¿ÉÒÔ¿´³ÉÓÉһϵÁÐÍⲿ¶ÔÏ󹹳ɣ¬ÕâЩÍⲿ¶ÔÏó¿ÉÄÜÊDZäÁ¿»òº¯Êý¡£¶øÄÚ²¿±äÁ¿ÊÇÖ¸¶¨ÒåÔÚº¯ÊýÄÚ²¿µÄº¯Êý²ÎÊý¼°±äÁ¿¡£Íⲿ±äÁ¿¶¨ÒåÔÚº¯ÊýÖ®Í⣬Òò´Ë¿ÉÒÔÔÚÐí¶àº¯ÊýÖÐʹÓá£ÓÉÓÚCÓïÑÔ²»ÔÊÐíÔÚÒ»¸öº¯ÊýÖж¨ÒåÆäËüº¯Êý£¬Òò´Ëº¯Êý±¾ÉíÖ»ÄÜÊÇ“ÍⲿµÄ”¡£
ÓÉÓÚ ......