C Traps and Pitfalls Ëæ±Ê
CÏÝÚåÓÚȱÏÝÕâ±¾Ê鵽ͼÊé¹Ý½èÁ˺ܾã¬Ò»Ö±¶¼Ã»ÓÐϸϸµÄ¿´£¬ÏÖÍêÕûµÄ¿´ÁËÖ®ºó°ÑÈÏÎªÖØÒªµÄ£¬Ò»°ãÈË¿ÉÄܺöÊÓµÄÎÊÌâ¸ø×öÁ˱ʼǣ¬Ï£ÍûÓÐËù°ïÖú
2010.02.25
¶þάÊý×é:
int calendar[12][31];
int * p;
int i;
calendar[4]µÄº¬Ò壺
calendar[4]ÊÇcalendarÊý×éµÄµÚ5¸öÔªËØ£¬ÊÇcalendarÊý×éÖÐ12¸öÓÐ×Å31¸öÕûÐÍÔªËØµÄÊý×éÖ®Ò»¡£
szieof(calendar[4])µÄ½á¹ûÊÇ31Óësizeof(int)µÄ³Ë»ý¡£
p=calendar[4];±íʾָÕëpÖ¸Ïòcalendar[4]ÖÐϱêΪ0µÄÔªËØ¡£
i=calendar[4][7];i=*(calendar[4]+7);i=*(*(calendar+4)+7);ΪͬÑùµÄ¹¦ÄÜ¡£
p=calendar;·Ç·¨£¬calendarÊÇÒ»¸ö¶þάÊý×飬¼´"Êý×éµÄÊý×é",±»×ª»»ÎªÒ»¸öÖ¸ÏòÊý×éµÄÖ¸Õ룻pΪָÏòÕûÐͱäÁ¿µÄÖ¸Õë¡£
int (*monthp)[31];monthp=calendar:ΪºÏ·¨µÄ¡£monthpÖ¸ÏòcalendarµÄµÚÒ»¸öÔªËØ
calendar[i][j]=0;Óë*(*(calendar+i)+j)=0;µÈ¼Û¡£
for(monthp=calendar;monthp< &calendar[12];monthp++)//¿ÉÒÔÓÃmonthp²½½øµÄ·½Ê½±ãÀûÊý×écalendar;
for(monthp=calendar;monthp< &calendar[12];monthp++)
int * dayp;
for(dayp=* monthp;dayp<&(*monthp)[31];dayp++)
*dayp=0;
×ܽ᣺
¿ÉÄÜÔÚCÓïÑÔÖжþάÊý×é²»ÊÇÁ¬Ðø·ÖÅäµÄ£¬µÚһάÖеÄÿһ¸öÔªËØÎªµÚ¶þάÊý×éµÄÊ×µØÖ·¡£
·ÇÊý×éÖ¸ÕëʹÓãº
char * r;
r=malloc(strlen(s)+strlen(t)+1);
if(!r) //error control;
strcpy(r,s);
strcat(r,t);
//control;
fress(r);
mallocº¯Êý¿ÉÄÜÎÞ·¨ÌṩÇëÇóµÄÄڴ棬½«·µ»Ø¿ÕÖ¸Õë¡£
strlen·µ»Ø×Ö·û´®ÖÐËù°üº¬µÄ×Ö·ûÊýÄ¿£¬×÷Ϊ½áÊø±êÖ¾µÄ¿Õ×Ö·û묒ËãÔÚÄÚ¡£strlen(s)µÄֵΪn£¬Ôò×Ö·û´®Êµ¼ÊÐèÒª£î+£±¸ö×Ö·ûµÄ¿Õ¼ä¡£
char hello[]="hello";
printf("%s\n",hello);Óëprintf("%s\n",&hello[0])µÈЧ¡£
char *p,*q;
p="xyz";//pµÄÖµ²»ÊÇ"xyz"£¬p¶øÊÇÖ¸Ïò×Ö·ûÊý×éµÄÆøÖÊÔªËØµÄÖ¸Õ룻
q=p;//pºÍqÖ¸ÏòÄÚ´æÖÐͬһµØÖ·µÄÖ¸Õë¡£¸Ã¸³ÖµÓï¾ä²¢Ã»ÓÐͬʱ¸´ÖÆÄÚ´æÖеÄ×Ö·û
q[1]='Y';//q£¬pÖ¸ÏòµÄ×Ö·û´®¶¼¸Ä±ä¡£
Êý×éÖÐʵ¼Ê²»´æÔڵēÒç½ç”ÔªËØµÄµØÖ·Î»ÓÚÊý×éËùÕ¼ÄÚ´æÖ®ºó£¬Õâ¸öµØÖ·¿ÉÒÔÓÃÓÚ¸´ÖƺͱȽϣ¬ÒýÓøÃÔªËØÔò·Ç·¨¡£
static:
static int a£»±íʾaµÄ×÷ÓÃÓòÏÞÖÆÔÚÒ»¸öÔ´ÎļþÖУ¬¶ÔÓÚÆäËûÔ´Îļþ£¬aÊDz»¿É¼ûµÄ¡£staticÒ²ÊÊÓÃÓÚº¯Ê
Ïà¹ØÎĵµ£º
B/S C/S ÓÅȱµã±È½Ï ¼° ÊÊÓ¦³¡ºÏ
Ê×ÏÈÀ´ËµB/SºÍC/SÁ½ÖÖÈí¼þÌåϵ½á¹¹¡£
¡¡¡¡B/S ÊÇBrowser/ServerÖ¸ä¯ÀÀÆ÷ºÍ·þÎñÆ÷¶Ë£¬ÔÚ¿Í»§»ú¶Ë²»ÓÃװרÃŵÄÈí¼þ£¬Ö»ÒªÒ»¸öä¯ÀÀÆ÷¼´¿É£¨Êݿͻ§¶Ë£©
¡¡¡¡C/S ÊÇClient/ServerÖ¸¿Í»§»úºÍ·þÎñÆ÷£¬ÔÚ¿Í»§»ú¶Ë±ØÐë×°¿Í»§¶ËÈí¼þ¼°ÏàÓ¦»·¾³ºó£¬²ÅÄÜ·ÃÎÊ·þÎñÆ÷£¨ÅÖ¿Í»§¶Ë£©
¡¡ ......
Òý×Ô¡¡http://www.wangchao.net.cn/bbsdetail_625196.html
¡¡¡¡ÔÚVisual C++ 2005ÖУ¬ÈçºÎµ÷ÓÃÆäËü±àÒëÆ÷±àÒëcppÎļþÄØ? »»¾ä»°Ëµ£¬ÈçºÎ°ÑÆäËü±àÒëÆ÷¼¯³Éµ½VC2005µÄIDEÖÐÄØ?
¡¡¡¡ÏóICCÕâÑùµÄ±àÒëÆ÷°²×°Ö®ºó»á×Ô¶¯¼¯³É½øÀ´£¬Òª¼¯³ÉÆäËû±àÒëÆ÷ÄÇ»¹µÃ×Ô¼º¶¯ÊÖ¡£ÏÂÃæ½éÉÜÒ»ÖÖ¼òµ¥¡¢Ç³²ãµÄ“¼¯³É”·½·¨¡£
¡¡¡¡ÄãҲР......
CÖÐÔ¤±àÒëºê¶¨Òå
2010-01-07 11:49
ÔÚ½«Ò»¸öCÔ´³ÌÐòת»»Îª¿ÉÖ´ÐгÌÐòµÄ¹ý³ÌÖÐ, ±àÒëÔ¤´¦ÀíÊÇ×î³õµÄ²½Öè. ÕâÒ»²½ÖèÊÇÓÉÔ¤´¦ÀíÆ÷(preprocessor)À´Íê³ÉµÄ. ÔÚÔ´Á÷³ÌÐò±»±àÒëÆ÷´¦Àí֮ǰ, Ô¤´¦ÀíÆ÷Ê×ÏȶÔÔ´³ÌÐòÖеÄ"ºê(macro)"½øÐд¦Àí.
C ³õѧÕß¿ÉÄܶÔÔ¤´¦ÀíÆ÷ûʲô¸ÅÄî, ÕâÊÇÇéÓпÉÔµÄ: Ò»°ãµÄC±àÒëÆ÷¶¼½«Ô¤´¦Àí, »ã±à, ± ......
CÄ£ÄâÃæÏò¶ÔÏóµÄ·½·¨
³éÏóÊý¾ÝÀàÐÍ
Èÿͻ§Ê¹ÓÃÖ¸ÏòûÓй«¿ª¶¨Òå (Ò²Ðí»¹Òþ²ØÔÚÀàÐͶ¨Òåºó±ß) µÄ½á¹¹ÀàÐ͵ÄÖ¸ÕëÊÇÒ»¸öºÃ°ì·¨¡£Ö»Òª²»·ÃÎʽṹ³ÉÔ±, ÉùÃ÷ºÍʹÓà “ÄäÃû” ½á¹¹Ö¸Õë (²»ÍêÈ«½á¹¹ÀàÐÍÖ¸Õë)ÊǺϷ¨µÄ¡£ÕâÒ²ÊÇʹÓóéÏóÊý¾ÝÀàÐ͵ÄÔÒò¡£
ÀàµÄ·½·¨
°Ñº¯ÊýÖ¸ÕëÖ±½Ó¼ÓÈëµ½½á¹¹ÖС£
¼Ì³Ð
Äã¿ÉÒÔʹÓø÷ÖÖ ......
ÖÚ¶àC++Êé¼®¶¼ÖÒ¸æÎÒÃÇCÓïÑÔºêÊÇÍò¶ñÖ®Ê×£¬µ«ÊÂÇé×ܲ»ÈçÎÒÃÇÏëÏóµÄÄÇô»µ£¬¾ÍÈçͬgotoÒ»Ñù¡£ºêÓÐ
Ò»¸öºÜ´óµÄ×÷Ó㬾ÍÊÇ×Ô¶¯ÎªÎÒÃDzúÉú´úÂë¡£Èç¹û˵ģ°å¿ÉÒÔΪÎÒÃDzúÉú¸÷ÖÖÐͱðµÄ´úÂë(ÐͱðÌæ»»)£¬
ÄÇôºêÆäʵ¿ÉÒÔΪÎÒÃÇÔÚ·ûºÅÉϲúÉúеĴúÂë(¼´·ûºÅÌæ»»¡¢Ôö¼Ó)¡£
¹ØÓÚºêµÄһЩÓï·¨ÎÊÌ⣬¿ÉÒÔÔÚgoogleÉÏÕÒµ½¡£ÏàÐÅÎÒ£¬Äã ......