CÖÐÔ¤±àÒëºê¶¨Òå
CÖÐÔ¤±àÒëºê¶¨Òå
2010-01-07 11:49
ÔÚ½«Ò»¸öCÔ´³ÌÐòת»»Îª¿ÉÖ´ÐгÌÐòµÄ¹ý³ÌÖÐ, ±àÒëÔ¤´¦ÀíÊÇ×î³õµÄ²½Öè. ÕâÒ»²½ÖèÊÇÓÉÔ¤´¦ÀíÆ÷(preprocessor)À´Íê³ÉµÄ. ÔÚÔ´Á÷³ÌÐò±»±àÒëÆ÷´¦Àí֮ǰ, Ô¤´¦ÀíÆ÷Ê×ÏȶÔÔ´³ÌÐòÖеÄ"ºê(macro)"½øÐд¦Àí.
C ³õѧÕß¿ÉÄܶÔÔ¤´¦ÀíÆ÷ûʲô¸ÅÄî, ÕâÊÇÇéÓпÉÔµÄ: Ò»°ãµÄC±àÒëÆ÷¶¼½«Ô¤´¦Àí, »ã±à, ±àÒë, Á¬½Ó¹ý³Ì¼¯³Éµ½Ò»ÆðÁË. ±àÒëÔ¤´¦ÀíÍùÍùÔÚºǫ́ÔËÐÐ. ÔÚÓеÄC±àÒëÆ÷ÖÐ, ÕâЩ¹ý³ÌͳͳÓÉÒ»¸öµ¥¶ÀµÄ³ÌÐòÀ´Íê³É, ±àÒëµÄ²»Í¬½×¶ÎʵÏÖÕâЩ²»Í¬µÄ¹¦ÄÜ. ¿ÉÒÔÖ¸¶¨ÏàÓ¦µÄÃüÁîÑ¡ÏîÀ´Ö´ÐÐÕâЩ¹¦ÄÜ. ÓеÄC±àÒëÆ÷ʹÓ÷ֱðµÄ³ÌÐòÀ´Íê³ÉÕâЩ²½Öè. ¿Éµ¥¶Àµ÷ÓÃÕâЩ³ÌÐòÀ´Íê³É. ÔÚgccÖÐ, ½øÐбàÒëÔ¤´¦ÀíµÄ³ÌÐò±»³ÆÎªCPP, ËüµÄ¿ÉÖ´ÐÐÎļþÃûΪcpp.
±àÒëÔ¤´¦ÀíÃüÁîµÄÓï·¨ÓëCÓïÑÔµÄÓï·¨ÊÇÍêÈ«¶ÀÁ¢µÄ. ±ÈÈç: Äã¿ÉÒÔ½«Ò»¸öºêÀ©Õ¹ÎªÓëCÓï·¨¸ñ¸ñ²»ÈëµÄÄÚÈÝ, µ«¸ÃÄÚÈÝÓëºóÃæµÄÓï¾ä½áºÏÔÚÒ»¸öÈôÄÜÉú³ÉºÏ·¨µÄCÓï¾ä, Ò²ÊÇ¿ÉÒÔÕýÈ·±àÒëµÄ.
(Ò») Ô¤´¦ÀíÃüÁî¼ò½é
Ô¤´¦ÀíÃüÁîÓÉ#(hash×Ö·û)¿ªÍ·, Ëü¶ÀÕ¼Ò»ÐÐ, #֮ǰֻÄÜÊǿհ׷û. ÒÔ#¿ªÍ·µÄÓï¾ä¾ÍÊÇÔ¤´¦ÀíÃüÁî, ²»ÒÔ#¿ªÍ·µÄÓï¾äΪCÖеĴúÂëÐÐ. ³£ÓõÄÔ¤´¦ÀíÃüÁîÈçÏÂ:
#define ¶¨ÒåÒ»¸öÔ¤´¦Àíºê
#undef È¡ÏûºêµÄ¶¨Òå
#include °üº¬ÎļþÃüÁî
#include_next Óë#includeÏàËÆ, µ«ËüÓÐ×ÅÌØÊâµÄÓÃ;
#if ±àÒëÔ¤´¦ÀíÖеÄÌõ¼þÃüÁî, Ï൱ÓÚCÓï·¨ÖеÄifÓï¾ä
#ifdef ÅжÏij¸öºêÊÇ·ñ±»¶¨Òå, ÈôÒѶ¨Òå, Ö´ÐÐËæºóµÄÓï¾ä
#ifndef Óë#ifdefÏà·´, ÅжÏij¸öºêÊÇ·ñδ±»¶¨Òå
#elif Èô#if, #ifdef, #ifndef»òÇ°ÃæµÄ#elifÌõ¼þ²»Âú×ã, ÔòÖ´ÐÐ#elifÖ®ºóµÄÓï¾ä, Ï൱ÓÚCÓï·¨ÖеÄelse-if
#else Óë#if, #ifdef, #ifndef¶ÔÓ¦, ÈôÕâЩÌõ¼þ²»Âú×ã, ÔòÖ´ÐÐ#elseÖ®ºóµÄÓï¾ä, Ï൱ÓÚCÓï·¨ÖеÄelse
#endi
Ïà¹ØÎĵµ£º
CRT È«³Æ£ºVisual C++ C RunTime Lib ¾ÍÊÇCÔËÐÐʱ¿â¡£
×¢£º ÒÔÏÂÄÚÈݲ¿·ÖÒý×ÔCSNDÖÐÏà¹ØÌÖÂÛµÄÌû×Ó£¬²¢½áºÏ×Ô¼ºµÄÀí½âÕûÀí¶ø³É¡£½ö¹©²Î¿¼¡£
1)ÔËÐÐʱ¿â¾ÍÊÇ C run-time library£¬ÊÇ C ¶ø·Ç C++ ÓïÑÔÊÀ½çµÄ¸ÅÄî:È¡Õâ¸öÃû×Ö¾ÍÊÇÒòΪÄãµÄ C ³ÌÐòÔËÐÐʱÐèÒªÕâЩ¿âÖеĺ¯Êý.
2)C ÓïÑÔÊÇËùνµÄ“СÄں˔ÓïÑÔ£¬¾ÍÆäÓ ......
ÎÒ²»»á˵ΪʲôÔÚc++ÖÐÓÃconst±ÈdefineºÃ£¬ÒòΪÎÒ×Ô¼º¶¼Ã»ÓжàºÃµØÁìÎòµ½£¬·´¶ø»¹¾õµÃdefineÄܹ»Íê³É¸üÇ¿´óµÄ¹¦ÄÜ£¬Ö»ÒªÊ¹Óõõ±¡£
ÔÚÕâÀïҪ˵µÄÖ»ÊÇÒ»¸öС¼¼ÇÉ£¬¸ø×Ô¼º±¸ÍüÓõġ£
constÔÚCºÍC++ÖÐ×î´óµÄ²»Í¬ÊÇ£¬ÔÚCÖУ¬constĬÈϾßÓÐÍⲿÁ´½Ó£¬¶øC++ÖÐÔòÊÇÄÚ²¿Á´½Ó£¬ÄÇôÓÃÆðÀ´ÓÐʲô²»Í¬ÄØ£¿
¼ÙÈçÎÒ¶¨ÒåÁË
const int ......
½«C/C++³ÌÐò·Åµ½ÍøÂçÉϲ¢²»ÊǼòµ¥µÄ¸´ÖÆÕ³Ìù£¬´ó²¿·ÖÍøÕ¾ºÍblogÊDz»Ìṩ´úÂëµÄÖ±½ÓÕ³ÌùµÄ£¨µ±È»CSDNÊDz»´íµÄ£©£¬Ö®Ç°ÔÚsinaд²©¿ÍµÄʱºò¾ÍÅöµ½ÀàËÆµÄÎÊÌâ¡£
C/C++×¥»»ÎªHTMLµÄ¹Ø¼üÊÇ´¦Àí×¢ÊÍ£¬¹Ø¼ü×Ö¡£µ±È»Ò²¿ÉÒÔ¶Ô×Ö·û´®£¬Êý×Ö½øÐÐÒ»¶¨µÄ¼ÓÁÁ´¦Àí¡£
1.ÎÒÒÔǰÓÃC++д¹ýÒ»¸ö³ÌÐò£¬Æäʵ±íÃæÉÏÊÇC++£¬Ö»ÊÇÊä³öÓÃÁËcoutºÍcin¶ ......
C Runtime Library
1)ÔËÐÐʱ¿â¾ÍÊÇ C run-time library£¬ÊÇ C ¶ø·Ç C++ ÓïÑÔÊÀ½çµÄ¸ÅÄî:È¡Õâ¸öÃû×Ö¾ÍÊÇÒòΪÄãµÄ C ³ÌÐòÔËÐÐʱÐèÒªÕâЩ¿âÖеĺ¯Êý.
2)C ÓïÑÔÊÇËùνµÄ“СÄں˔ÓïÑÔ£¬¾ÍÆäÓïÑÔ±¾ÉíÀ´ËµºÜС£¨²»¶àµÄ¹Ø¼ü×Ö£¬³ÌÐòÁ÷³Ì¿ØÖÆ£¬Êý¾ÝÀàÐ͵ȣ©£»ËùÒÔ£¬C ÓïÑÔÄں˿ª·¢³öÀ´Ö®ºó£¬ Dennis Ritchie ºÍ Brian ......
C/C++³ÌÐòԱӦƸ³£¼ûÃæÊÔÌâÉîÈëÆÊÎö(2)
×÷ÕߣºËᦻª e-mail:21cnbao@21cn.com ³ö´¦£ºÈí¼þ±¨
3.ÄÚ¹¦Ìâ
ÊÔÌâ1£º·Ö±ð¸ø³öBOOL£¬int£¬float£¬Ö¸Õë±äÁ¿ Óë“ÁãÖµ”±È½ÏµÄ if Óï¾ä£¨¼ÙÉè±äÁ¿ÃûΪvar£©
½â´ð£º
BOOL ÐͱäÁ¿£ºif(!var)
int ÐͱäÁ¿£º if(var==0)
float ÐͱäÁ¿£º
const float EPSINON = 0.00 ......