C/C++ÖÐ ºê¶¨Òå×Ö·û´® ²Ù×÷
¹ØÓڼǺÅÕ³Ìù²Ù×÷·û(token paste operator): ##
1. ¼òµ¥µÄ˵£¬“##”ÊÇÒ»ÖÖ·Ö¸ôÁ¬½Ó·½Ê½£¬ËüµÄ×÷ÓÃÊÇÏÈ·Ö¸ô£¬È»ºó½øÐÐÇ¿ÖÆÁ¬½Ó¡£
ÆäÖУ¬·Ö¸ôµÄ×÷ÓÃÀàËÆÓÚ¿Õ¸ñ¡£ÎÒÃÇÖªµÀÔÚÆÕͨµÄºê¶¨ÒåÖУ¬Ô¤´¦ÀíÆ÷Ò»°ã°Ñ¿Õ¸ñ
½âÊͳɷֶαêÖ¾£¬¶ÔÓÚÿһ¶ÎºÍÇ°Ãæ±È½Ï£¬ÏàͬµÄ¾Í±»Ìæ»»¡£µ«ÊÇÕâÑù×öµÄ½á¹ûÊÇ£¬
±»Ìæ»»¶ÎÖ®¼ä´æÔÚһЩ¿Õ¸ñ¡£Èç¹ûÎÒÃDz»Ï£Íû³öÏÖÕâЩ¿Õ¸ñ£¬¾Í¿ÉÒÔͨ¹ýÌí¼ÓһЩ
##À´Ìæ´ú¿Õ¸ñ¡£
ÁíÍâһЩ·Ö¸ô±êÖ¾ÊÇ£¬°üÀ¨²Ù×÷·û£¬±ÈÈç +, -, *, /, [,], …£¬ËùÒÔ¾¡¹ÜÏÂÃæµÄ
ºê¶¨ÒåûÓпոñ£¬µ«ÊÇÒÀÈ»±í´ïÓÐÒâÒåµÄ¶¨Ò壺 define add(a, b) a+b
¶øÆäÇ¿ÖÆÁ¬½ÓµÄ×÷ÓÃÊÇ£¬È¥µôºÍÇ°ÃæµÄ×Ö·û´®Ö®¼äµÄ¿Õ¸ñ£¬¶ø°ÑÁ½ÕßÁ¬½ÓÆðÀ´¡£
2. ¾ÙÁÐ – ÊԱȽÏÏÂÊö¼¸¸öºê¶¨ÒåµÄÇø±ð
#define A1(name, type) type name_##type##_type »ò
#define A2(name, type) type name##_##type##_type
A1(a1, int); /* µÈ¼ÛÓÚ: int name_int_type; */
A2(a1, int); /* µÈ¼ÛÓÚ: int a1_int_type; */
½âÊÍ£º
1) ÔÚµÚÒ»¸öºê¶¨ÒåÖУ¬”name”ºÍµÚÒ»¸ö”_”Ö®¼ä£¬ÒÔ¼°µÚ2¸ö”_”ºÍµÚ¶þ¸ö
”type”Ö®¼äûÓб»·Ö¸ô£¬ËùÒÔÔ¤´¦ÀíÆ÷»á°Ñname_##type##_type½âÊͳÉ3¶Î£º
“name_”¡¢“type”¡¢ÒÔ¼°“_type”£¬ÕâÖмäÖ»ÓГtype”ÊÇÔÚºêÇ°Ãæ³öÏÖ¹ý
µÄ£¬ËùÒÔËü¿ÉÒÔ±»ºêÌæ»»¡£
2) ¶øÔÚµÚ¶þ¸öºê¶¨ÒåÖУ¬“name”ºÍµÚÒ»¸ö“_”Ö®¼äÒ²±»·Ö¸ôÁË£¬ËùÒÔ
Ô¤´¦ÀíÆ÷»á°Ñname##_##type##_type½âÊͳÉ4¶Î£º“name”¡¢“_”¡¢“type”
ÒÔ¼°&ldq
Ïà¹ØÎĵµ£º
[C/C++ Digestion] –
×Ôµ×ÏòÉϵØ̽¾¿Ð麯Êý
×÷Õߣº
Jason Lee @
http://blog.csdn.net/jasonblog
ÈÕÆÚ£º
2010-05-19
»·¾³£º
Visual C++ Express
2008
ÉùÃ÷£º±¾ÎÄ·¢±íÔÚ
csdn
²©¿Í£¬ÈçÓÐתÔØ£¬Çë×¢Ã÷³ö´¦
[1]C++
¶ÔÏóÄ£ÐÍ»ù´¡
Ò»¸öÀàÖпÉÒÔ°üº¬¾²Ì¬Êý¾Ý³ÉÔ±¡¢¾²Ì¬³ÉÔ±º¯Êý¡¢·Ç¾²Ì¬³ÉÔ±º¯Êýº ......
c/c++Ö§³Ö¿É±ä²ÎÊýµÄº¯Êý£¬¼´º¯ÊýµÄ²ÎÊýÊDz»È·¶¨µÄ¡£
Ò»¡¢ÎªÊ²Ã´ÒªÊ¹Óÿɱä²ÎÊýµÄº¯Êý£¿
Ò»°ãÎÒÃDZà³ÌµÄʱºò£¬º¯ÊýÖÐÐÎʽ²ÎÊýµÄÊýĿͨ³£ÊÇÈ·¶¨µÄ£¬ÔÚµ÷ÓÃʱҪÒÀ´Î¸ø³öÓëÐÎʽ²ÎÊý¶ÔÓ¦µÄËùÓÐʵ¼Ê²ÎÊý¡£µ«ÔÚijЩÇé¿öÏÂÏ£Íûº¯ÊýµÄ²ÎÊý¸öÊý¿ÉÒÔ¸ù¾ÝÐèҪȷ¶¨£¬Òò´ËcÓïÑÔÒýÈë¿É±ä²ÎÊýº¯Êý¡£ÕâÒ²ÊÇc¹¦ÄÜÇ¿´óµÄÒ»¸ö·½Ã棬ÆäËüÄ³Ð©Ó ......
/*****************test.c****************/
#include <stdio.h>
#include <stdlib.h>
#include "addr.h"
int main()
{
int flag=1;
while(flag)
{
switch(choose_menu())
{
case 1:add_person();break;
case 2:show_person_in ......
symbianÓÐ×Ô¼ºµÄÒ»Ì׿⡣ҪºÃµÄ³ÉÐ͵ÄC´úÂ룬±ÈÈçÇ°Á½ÌìΪÁ˽âÎöXMLÎÒÒýÓõ½µÄtinyxml¡£ËùÒÔÔÚsymbianÏÂÒýÓÃC±ê×¼¿â¾Í·Ç³£ÖØÒª£¬ÕâÊǶÔÒÔÇ°´úÂë·Ç³£ºÃµÄÒÆÖ²·½Ê½¡£
ΪÁËÄÜÓÃC±ê×¼¿â£¬Ö÷ÒªÐÞ¸ÄmmpÎļþÖеÄ·¾¶ºÍ¿âÅäÖá£Ìí¼ÓÈçÏÂÁ½ÐУ¬¾Í¿ÉÒÔÓÃC±ê×¼¿âÁË¡£
SYSTEMINCLUDE /epoc32/include/stdapis
LIBRARY ......
ÔÚ±à³ÌµÄ¹ý³ÌÖУ¬ÎļþµÄ²Ù×÷ÊÇÒ»¸ö¾³£Óõ½µÄÎÊÌ⣬ÔÚC++BuilderÖУ¬¿ÉÒÔʹÓöàÖÖ·½·¨¶ÔÎļþ²Ù×÷£¬ÏÂÃæÎҾͰ´ÒÔϼ¸¸ö²¿·Ö¶Ô´Ë×÷Ïêϸ½éÉÜ£¬¾ÍÊÇ£º
1¡¢»ùÓÚCµÄÎļþ²Ù×÷£»
2¡¢»ùÓÚC++µÄÎļþ²Ù×÷£»
3¡¢»ùÓÚWINAPIµÄÎļþ²Ù×÷£»
4¡¢»ùÓÚBCB¿âµÄÎļþ²Ù×÷£»
5¡¢ÌØÊâÎļþµÄ²Ù×÷¡£
¡¡
Ò¼¡¢»ùÓÚCµÄÎļþ²Ù×÷
¡¡¡¡ÔÚANSI CÖУ¬ ......