¶Á¡¶CºÍÖ¸Õë¡·±Ê¼ÇÕªÒª¡¾5¡¿
2010-04-09
µÚÊ®ËÄÕ Ԥ´¦ÀíÆ÷
1¡¢#define Ìæ»»
ÔÚ³ÌÐòÖÐÀ©Õ¹#define¶¨Òå·ûºÅºÍºêʱ£¬Ðè񻃾¼°¼¸¸ö²½Ö裻
¢Ù¡¢ÔÚµ÷Óúêʱ£¬Ê×ÏȶԲÎÊý½øÐмì²é£¬¿´¿´ÊÇ·ñ°üº¬ÁËÈκÎÓÉ#define¶¨ÒåµÄ·ûºÅ£¬Èç¹ûÊÇ£¬ËüÃÇÊ×Ïȱ»Ìæ»»£»
¢Ú¡¢Ìæ»»ÎļþËæºó±»²åÈëµ½³ÌÐòÖÐÔÀ´ÎļþµÄλÖ㬶ÔÓں꣬²ÎÊýÃû±»ËûÃǵÄÖµÌæ´ú£»
¢Û¡¢×îºó£¬ÔٴζԽá¹ûÎı¾½øÐÐɨÃ裬¿´¿´ËüÊÇ·ñ°üº¬ÁËÓÉ#define¶¨ÒåµÄ·ûºÅ£¬Èç¹ûÊÇ£¬¾ÍÖØ¸´ÉÏÊö´¦Àí¹ý³Ì£»
2¡¢ºê²ÎÊýºÍ#define¶¨Òå¿ÉÒÔ°üº¬ÆäËû#define¶¨ÒåµÄ·ûºÅ£¬µ«ÊǺ겻¿ÉÒÔ³öÏֵݹ飻
3¡¢#define PRINT( FORMAT, VALUE ) \
printf( "the value of "#VALUE" is "FORMAT" \n", VALUE )
4¡¢ºêÓëÀàÐÍÎÞ¹Ø
5¡¢ÏÂÃæµÄÖ´Ðнá¹û£º
#define MAX( a, b ) ( (a) > (b) ? (a) : (b) )
z = MAX( x++, y++ ); (ÆäÖÐx = 5£»y = 8)
½á¹û£ºx = 6£»y = 10£»z = 9£»
ÔÒò£ºz = ( (x++) > (y++) ? (x++) : (y++));
6¡¢#undef (Ô¤´¦ÀíÖ¸ÁÓÃÓÚÒÆ³ýÒ»¸öºê¶¨Òå)
7¡¢Ìõ¼þ±àÒ룺ÔÚ±àÒëÒ»¸ö³ÌÐòʱ£¬Èç¹ûÎÒÃÇ¿ÉÒÔÑ¡ÔñijÌõÓï¾ä»òij×éÓï¾ä£¬½øÐзÒë»òÕß±»ºöÂÔ£¬³£³£ÏԵúܷ½±ã¡£Ö»ÓÃÓÚµ÷ÊÔ³ÌÐòµÄÓï¾ä¾ÍÊÇÒ»¸öÃ÷ÏÔµÄÀý×Ó£¬ËûÃDz»Ó¦¸Ã³öÏÖÔÚ³ÌÐòµÄ²úÆ·°æ±¾ÖУ¬µ«ÊÇÄã¿ÉÄܲ¢²»Ïñ°ÑÕâЩÓï¾ä´ÓÔ´´úÂëÖÐÎïÀíɾ³ý£¬ÒòΪÐèҪһЩά»¤ÐÔÐÞ¸Äʱ£¬Äã¿ÉÄÜÐèÒªÖØÐµ÷ÊÔÕâ¸ö³ÌÐò£¬»¹ÐèÒªÕâЩÓï¾ä£»
8¡¢Ìõ¼þ±àÒ룺#if ³£Á¿±í´ïʽ ——Õâ¸öÓÉÔ¤´¦ÀíÆ÷½øÐÐÇóÖµ
statement
#endif
9¡¢Ëùν³£Á¿±í´ïʽ£¬¾ÍÊÇ˵Ëü»òÕßÊÇ×ÖÃæÖµ³£Á¿»òÕßÊÇÒ»¸ö#define¶¨ÒåµÄ·ûºÅ£¬Èç¹û±äÁ¿ÔÚÖ´ÐÐÆÚǰÎÞ·¨»ñµÃËûÃǵÄÖµ£¬ÄÇôËûÃÇÈç¹û³öÏÖÔÚ³£Á¿±í´ïʽÖоÍÊÇ·Ç·¨µÄ£¬ÒòΪËûÃǵÄÖµÔÚ±àÒëʱÊDz»¿ÉÔ¤²âµÄ£»
10¡¢Ìõ¼þ±àÒ룺
#if ³£Á¿±í´ïʽ
statement
#elif ³£Á¿±í´ïʽ
statement
#else
other statement
#endif
11¡¢ÅжÏÊÇ·ñ±»¶¨Ò壺
¢Ù¡¢#if defined(´ýÅжÏÃû)
¢Ú¡¢#ifdef ´ýÅжÏÃû
¢Û¡¢#if !defined(´ýÅжÏÃû)
¢Ü¡¢#ifndef ´ýÅжÏÃû
ÆäÖÐ#ifµÄ¹¦ÄܸüÇ¿£¡£¡
12¡¢Í·ÎļþǶÌ×£¬±ê×¼ÒªÇó±àÒëÆ÷±ØÐëÖÁÉÙÖ§³Ö8²ãµÄÍ·ÎļþǶÌ×£¬Ò»°ãÀ´Ëµ£¬Ò»µ½Á½²ãÒ²²î²»¶à£»
13¡¢¶àÖØ°üº¬ÔÚ¾ø´ó¶àÊýÇé¿öϳöÏÖÓÚ´óÐͳÌÐòÖУ¬ËüÍùÍùÐèҪʹÓúܶàÍ·Îļþ£¬Òò´ËÒª·¢ÏÖÕâÖÖÇé¿ö²¢²»ÈÝÒ×£¬Òª½â¾öÕâÖÖÎÊÌ⣬ÎÒ
Ïà¹ØÎĵµ£º
Ò» £¬ÔõÑùѧϰCÓïÑÔ
ºÜ¶àÈ˶ÔѧϰCÓïÑԸе½ÎÞ´ÓÏÂÊÖ£¬¾³£ÎÊÎÒͬһ¸öÎÊÌ⣺¾¿¾¹ÔõÑùѧϰCÓïÑÔ£¿ÎÒÊÇÒ»¸ö½Ìʦ£¬ÒѾ¿ª·¢Á˺ܶàÄêµÄ³ÌÐò£¬ºÍºÜ¶à¸Õ¸ÕÆð²½µÄÈËÒ»Ñù£¬Ñ§Ï°µÄµÚÒ»¸ö¼ÆËã»úÓïÑÔ¾ÍÊÇCÓïÑÔ¡£¾¹ýÕâЩÄêµÄ¿ª·¢£¬ÎÒÉîÉîµÄÌå»áµ½CÓïÑÔ¶ÔÓÚÒ»¸ö³ÌÐòÉè¼ÆÈËÔ±¶àôµÄÖØÒª£¬Èç¹û²»¶®CÓ ......
Õ»Ö÷ÒªÓÃÀ´´æ·Å¾Ö²¿±äÁ¿, ´«µÝ²ÎÊý, ´æ·Åº¯ÊýµÄ·µ»ØµØÖ·.esp ʼÖÕÖ¸ÏòÕ»¶¥, Õ»ÖеÄÊý¾ÝÔ½¶à, espµÄֵԽС.
¶ÑÓÃÓÚ´æ·Å¶¯Ì¬·ÖÅäµÄ¶ÔÏó, µ±ÄãʹÓà malloc , new µÈ½øÐзÖÅäʱ,ËùµÃµ½µÄ¿Õ¼ä¾ÍÔÚ¶ÑÖÐ. ¶¯Ì¬·ÖÅäµÃµ½µÄÄڴ渽´øÓзÖÅäÐÅÏ¢, ËùÒÔÄãÄܹ» realloc ºÍ freeµ÷ËüÃÇ.
È«¾Ö£¬¾²Ì¬ºÍ³£Á¿ÊÇ·ÖÅäÔÚÊý¾ÝÇøÖеġ£Êý¾ÝÇø°üÀ¨b ......
[root@localhost test]# hexdump -s 0 -n 52 -C helloworld
00000000 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|
00000010 02 00 03 00 01 00 00 00 10 83 04 08 34 00 00 00 |............4...|
00000020 30 08 00 00 00 00 00 00 34 00 20 ......
1.д³öÁ½¸öº¯Êý£¬·Ö±ðÇóÁ½¸öÕûÊýµÄ×î´ó¹«Ô¼ÊýºÍ×îС¹«±¶Êý£¬ÓÃÖ÷º¯Êýµ÷ÓÃÕâÁ½¸öº¯Êý£¬²¢Êä³ö½á¹û¡£Á½¸öÕûÊýÓɼüÅÌÊäÈë¡£
#include<stdio.h>
int gcd(int,int);
int lcm(int,int);
int gcd(int m,int n)
{
if(m%n==0)
return n;
else
return gcd(n,m%n);
}
int lcm(int m,int n)
{
return m*n/(gc ......
תÌû×Ôhttp://teren.itpub.net/post/15914/189516дµÄ·Ç³£ºÃ£¬Í¬Ê±¶Ô×÷Õß´òÆÆÉ°¹øÎʵ½µ×µÄ¾«Éñ³¹µ×ÕÛ·þ
¡¶³¹µ×¸ã¶¨CÖ¸Õë¡·µÚһƪ ±äÁ¿µÄÄÚ´æÊµÖÊ
ÒªÀí½âCÖ¸Õ룬ÎÒÈÏΪһ¶¨ÒªÀí½âCÖГ±äÁ¿”µÄ´æ´¢ÊµÖÊ£¬ËùÒÔÎҾʹӓ±äÁ¿”Õâ¸ö¶«Î÷¿ªÊ¼½²Æð°É£¡
ÏÈÀ´Àí½âÀí½âÄÚ´æ¿Õ¼ä°É£¡Çë¿´ÏÂͼ£º
ÄÚ´æµØ ......