Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

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


Ïà¹ØÎĵµ£º

³£¼ûÎÊÌâ Ö® win32ƽ̨ÏÂÓÃC¿ª·¢Socket³ÌÐò

³£¼ûÎÊÌ⣺
±àÒëʧ°Ü£¬±¨´íÈçÏ“ÎÞ·¨½âÎöµÄÍⲿ·ûºÅ _WSACleanup@0”µÈ¡£
Ô­ÒòÊÇûÓÐÒýÓÃwinsock.hËùÔڵĿâ--Ws2_32.lib¡£
ÕâʱֻҪÌí¼ÓÒ»ÐдúÂë
 #pragma   comment(   lib,   "Ws2_32.lib")
¼´¿É¡£ ......

Nicholas C. ZakasÈçºÎÃæÊÔǰ¶Ë¹¤³Ìʦ

·­Ò룺cn-cuckoo | 2010-01-10 12:05:43 | ÔĶÁ129 | À´Ô´
ÃæÊÔǰ¶Ë¹¤³Ìʦ¶ÔÎÒÀ´ËµÊÇÒ»¼þ·Ç³£ÓÐÒâ˼µÄÊ£¬ÒòÎªÃæÊÔ¹ý³ÌºÜ´ó³Ì¶ÈÉÏÒ²ÊÇ×ÔÎÒÌáÉýµÄ¹ý³Ì¡£ÎÞÂÛ´ó¹«Ë¾»¹ÊÇС¹«Ë¾£¬Ö®ËùÒÔÔÚÈçºÎÕÐÆ¸µ½ÕæÕýÓÐÄÜÁ¦µÄǰ¶Ë¹¤³Ìʦ·½Ãæ»áÓöµ½Í¬ÑùµÄÎÊÌ⣬¾ÍÊÇÒòΪ¸ºÔðÕÐÆ¸µÄÄÇЩÈ˲»ÖªµÀ×Ô¼º¹«Ë¾ÐèҪʲôÑùµÄÈË£¬½á¹ûÎÊÎÊÌâʱҲÎʲ»µ ......

SQLite C/C++½Ó¿Ú½éÉÜ

ÕâÆªÎÄÕÂÊÇʹÓÃSQLite C/C++½Ó¿ÚµÄÒ»¸ö¸ÅÒª½éÉܺÍÈëÃÅÖ¸ÄÏ¡£
ÓÉÓÚÔçÆÚµÄSQLiteÖ»Ö§³Ö5¸öC/C++½Ó¿Ú£¬Òò¶ø·Ç³£ÈÝÒ×ѧϰºÍʹÓ㬵«ÊÇËæ×ÅSQLite¹¦ÄܵÄÔöÇ¿£¬ÐµÄC/C++½Ó¿Ú
²»¶ÏµÄÔö¼Ó½øÀ´£¬µ½ÏÖÔÚÓг¬¹ý150¸ö²»Í¬µÄAPI½Ó¿Ú¡£ÕâÍùÍùʹ³õѧÕßÍû¶øÈ´²½¡£ÐÒÔ˵ÄÊÇ£¬´ó¶àÊýSQLiteÖеÄC/C++½Ó¿ÚÊÇרÓõģ¬Òò¶øºÜÉÙ±»
ʹÓõ½¡£¾¡¹Ü ......

Linux²Ù×÷ϵͳI2CÇý¶¯¼Ü¹¹

1£¬LinuxµÄI2CÇý¶¯¼Ü¹¹¸ÅÀÀ
      LinuxÖÐI2C×ÜÏßµÄÇý¶¯·ÖΪÁ½¸ö²¿·Ö£¬×ÜÏßÇý¶¯£¨BUS£©ºÍÉ豸Çý¶¯£¨DEVICE£©¡£ÆäÖÐ×ÜÏßÇý¶¯µÄÖ°Ôð£¬ÊÇΪϵͳÖÐÿ¸öI2C×ÜÏßÔö¼ÓÏàÓ¦µÄ¶Áд·½·¨£¨±ÈÈ粻ͬµÄÖ÷оƬ¼¯³ÉµÄI2C¿ØÖÆÆ÷£©¡£µ«ÊÇ×ÜÏßÇý¶¯±¾Éí²¢²»»á½øÐÐÈκεÄͨѶ£¬ËüÖ»ÊÇ´æÔÚÔÚÄÇÀµÈ´ýÉ豸Çý¶¯µ÷ÓÃÆäº ......

C/C++´úÂëת»»¼ÓÁÁΪHTML´úÂë

½«C/C++³ÌÐò·Åµ½ÍøÂçÉϲ¢²»ÊǼòµ¥µÄ¸´ÖÆÕ³Ìù£¬´ó²¿·ÖÍøÕ¾ºÍblogÊDz»Ìṩ´úÂëµÄÖ±½ÓÕ³ÌùµÄ£¨µ±È»CSDNÊDz»´íµÄ£©£¬Ö®Ç°ÔÚsinaд²©¿ÍµÄʱºò¾ÍÅöµ½ÀàËÆµÄÎÊÌâ¡£
C/C++×¥»»ÎªHTMLµÄ¹Ø¼üÊÇ´¦Àí×¢ÊÍ£¬¹Ø¼ü×Ö¡£µ±È»Ò²¿ÉÒÔ¶Ô×Ö·û´®£¬Êý×Ö½øÐÐÒ»¶¨µÄ¼ÓÁÁ´¦Àí¡£
1.ÎÒÒÔǰÓÃC++д¹ýÒ»¸ö³ÌÐò£¬Æäʵ±íÃæÉÏÊÇC++£¬Ö»ÊÇÊä³öÓÃÁËcoutºÍcin¶ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ