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

c/c++ÄÚ´æ»®·Ö

Ò»¡¢Ò»¸ö¾­¹ý±àÒëµÄC/C++µÄ³ÌÐòÕ¼ÓõÄÄÚ´æ·Ö³ÉÒÔϼ¸¸ö²¿·Ö£º
¡¡¡¡1¡¢Õ»Çø£¨stack£©£ºÓɱàÒëÆ÷×Ô¶¯·ÖÅäºÍÊÍ·Å £¬´æ·Åº¯ÊýµÄ²ÎÊýÖµ¡¢¾Ö²¿±äÁ¿µÄÖµµÈ£¬ÉõÖÁº¯ÊýµÄµ÷Óùý³Ì¶¼ÊÇÓÃÕ»À´Íê³É¡£Æä²Ù×÷·½Ê½ÀàËÆÓÚÊý¾Ý½á¹¹ÖеÄÕ»¡£
¡¡¡¡2¡¢¶ÑÇø£¨heap£© £ºÒ»°ãÓɳÌÐòÔ±ÊÖ¶¯ÉêÇëÒÔ¼°ÊÍ·Å£¬ Èô³ÌÐòÔ±²»ÊÍ·Å£¬³ÌÐò½áÊøʱ¿ÉÄÜÓÉOS»ØÊÕ ¡£×¢ÒâËüÓëÊý¾Ý½á¹¹ÖеĶÑÊÇÁ½»ØÊ£¬·ÖÅ䷽ʽÀàËÆÓÚÁ´±í¡£
¡¡¡¡3¡¢È«¾ÖÇø£¨¾²Ì¬Çø£©£¨static£©£ºÈ«¾Ö±äÁ¿ºÍ¾²Ì¬±äÁ¿µÄ´æ´¢ÊÇ·ÅÔÚÒ»¿éµÄ£¬³õʼ»¯µÄÈ«¾Ö±äÁ¿ºÍ¾²Ì¬±äÁ¿ÔÚÒ»¿éÇøÓò£¬ δ³õʼ»¯µÄÈ«¾Ö±äÁ¿ºÍδ³õʼ»¯µÄ¾²Ì¬±äÁ¿ÔÚÏàÁÚµÄÁíÒ»¿éÇøÓò¡£³ÌÐò½áÊøºóÓÉϵͳÊͷſռ䡣
¡¡¡¡4¡¢ÎÄ×Ö³£Á¿Çø£º³£Á¿×Ö·û´®¾ÍÊÇ·ÅÔÚÕâÀïµÄ¡£ ³ÌÐò½áÊøºóÓÉϵͳÊͷſռ䡣
¡¡¡¡5¡¢³ÌÐò´úÂëÇø£º´æ·Åº¯ÊýÌåµÄ¶þ½øÖÆ´úÂë¡£
¡¡¡¡ÏÂÃæµÄÀý×Ó¿ÉÒÔÍêȫչʾ²»Í¬µÄ±äÁ¿ËùÕ¼µÄÄÚ´æÇøÓò£º
¡¡¡¡//main.cpp
¡¡¡¡int a = 0; È«¾Ö³õʼ»¯Çø
¡¡¡¡char *p1; È«¾Öδ³õʼ»¯Çø
¡¡¡¡main()
¡¡¡¡{
¡¡¡¡int b; //Õ»ÖÐ
¡¡¡¡char s[] = "abc"; //Õ»ÖÐ
¡¡¡¡char *p2; //Õ»ÖÐ
¡¡¡¡char *p3 = "123456"; //123456\0ÔÚ³£Á¿Çø£¬p3ÔÚÕ»ÉÏ
¡¡¡¡static int c =0£» //È«¾Ö£¨¾²Ì¬£©³õʼ»¯Çø
¡¡¡¡//ÒÔÏ·ÖÅäµÃµ½µÄ10ºÍ20×Ö½ÚµÄÇøÓò¾ÍÔÚ¶ÑÇø
¡¡¡¡p1 = (char *)malloc(10);
¡¡¡¡p2 = new char[20];//(char *)malloc(20);
¡¡¡¡strcpy(p1, "123456"); //123456\0·ÅÔÚ³£Á¿Çø£¬±àÒëÆ÷¿ÉÄܻὫËüÓëp3ËùÖ¸ÏòµÄ"123456"ÓÅ»¯³ÉÒ»¸öµØ·½¡£
¡¡¡¡}
¡¡¡¡¶þ¡¢Õ»£¨stack£©ºÍ¶Ñ£¨heap£©¾ßÌåµÄÇø±ð¡£
¡¡¡¡1¡¢ÔÚÉêÇ뷽ʽÉÏ
¡¡¡¡Õ»£¨stack£©: ÏÖÔںܶàÈ˶¼³Æ֮Ϊ¶ÑÕ»£¬Õâ¸öʱºòʵ¼ÊÉÏ»¹ÊÇÖ¸µÄÕ»¡£ËüÓɱàÒëÆ÷×Ô¶¯¹ÜÀí£¬ÎÞÐèÎÒÃÇÊÖ¹¤¿ØÖÆ¡£ ÀýÈ磬ÉùÃ÷º¯ÊýÖеÄÒ»¸ö¾Ö²¿±äÁ¿ int b ϵͳ×Ô¶¯ÔÚÕ»ÖÐΪb¿ª±Ù¿Õ¼ä£»ÔÚµ÷ÓÃÒ»¸öº¯Êýʱ£¬ÏµÍ³×Ô¶¯µÄ¸øº¯ÊýµÄÐβαäÁ¿ÔÚÕ»Öпª±Ù¿Õ¼ä¡£
¡¡¡¡¶Ñ£¨heap£©: ÉêÇëºÍÊÍ·ÅÓɳÌÐòÔ±¿ØÖÆ£¬²¢Ö¸Ã÷´óС¡£ÈÝÒײúÉúmemory leak¡£
¡¡¡¡ÔÚCÖÐʹÓÃmallocº¯Êý¡£
¡¡¡¡È磺p1 = (char *)malloc(10);
¡¡¡¡ÔÚC++ÖÐÓÃnewÔËËã·û¡£
¡¡¡¡È磺p2 = new char[20];//(char *)malloc(10);
¡¡¡¡µ«ÊÇ×¢Òâp1±¾ÉíÔÚÈ«¾ÖÇø£¬¶øp2±¾ÉíÊÇÔÚÕ»Öеģ¬Ö»ÊÇËüÃÇÖ¸ÏòµÄ¿Õ¼äÊÇÔÚ¶ÑÖС£
¡¡¡¡2¡¢ÉêÇëºóϵͳµÄÏìÓ¦ÉÏ
¡¡¡¡Õ»£¨stack£©:Ö»ÒªÕ»µÄÊ£Óà¿Õ¼ä´óÓÚËùÉêÇë¿Õ¼ä£¬ÏµÍ³½«Îª³ÌÐòÌṩÄڴ棬·ñÔò½«±¨Òì³£ÌáʾջÒç³ö¡£
¡¡¡¡¶Ñ£¨heap£©: Ê×ÏÈÓ¦¸ÃÖªµÀ²Ù×÷ϵͳÓÐÒ»¸ö¼Ç¼¿ÕÏÐÄÚ´æµØÖ·µÄÁ´±í£¬µ


Ïà¹ØÎĵµ£º

C/C++ÊÔÌâ

1¡¢bool¡¢float¡¢Ö¸Õë±äÁ¿Óë"ÁãÖµ"±È½ÏµÄifÓï¾ä£¿
´ð£º
bool flag;   if(flag)£¬if(!flag)
char *p;   if(p==NULL)£¬if(p!=NULL)
float x;  
const float EPSILON = 1e-6;
if((x>=-EPSILON)&&(x<=EPSILON)) //(-0.000001~0.000001)
if((x<-EPSILON)&& ......

ÖÐÐËͨѶC++/C±ÊÊÔÌâ(07)

C++/CÊÔÌâ   
±¾ÊÔÌâ½öÓÃÓÚ¿¼²éC++/C³ÌÐòÔ±µÄ»ù±¾±à³Ì¼¼ÄÜ¡£ÄÚÈÝÏÞÓÚC++/C³£ÓÃÓï·¨£¬²»Éæ¼°Êý¾Ý½á¹¹¡¢Ëã·¨ÒÔ¼°Éî°ÂµÄÓï·¨¡£¿¼ÊԳɼ¨ÄÜ·´Ó³³ö¿¼ÉúµÄ±à³ÌÖÊÁ¿ÒÔ¼°¶ÔC++/CµÄÀí½â³Ì¶È£¬µ«²»ÄÜ·´Ó³¿¼ÉúµÄÖÇÁ¦ºÍÈí¼þ¿ª·¢ÄÜÁ¦¡£
       ±ÊÊÔʱ¼ä90·ÖÖÓ¡£Ç뿼ÉúÈÏÕæ´ðÌ⣬ÇÐÎð ......

»ªÎªC/C++±ÊÊÔÌâ(¸½´ð°¸£¬»ªÎªÃæÊÔÌâϵÁÐ)

1.staticÓÐʲôÓÃ;£¿£¨ÇëÖÁÉÙ˵Ã÷Á½ÖÖ£©
    1)ÔÚº¯ÊýÌ壬һ¸ö±»ÉùÃ÷Ϊ¾²Ì¬µÄ±äÁ¿ÔÚÕâÒ»º¯Êý±»µ÷Óùý³ÌÖÐά³ÖÆäÖµ²»±ä¡£
    2) ÔÚÄ£¿éÄÚ£¨µ«ÔÚº¯ÊýÌåÍ⣩£¬Ò»¸ö±»ÉùÃ÷Ϊ¾²Ì¬µÄ±äÁ¿¿ÉÒÔ±»Ä£¿éÄÚËùÓú¯Êý·ÃÎÊ£¬µ«²»Äܱ»Ä£¿éÍâÆäËüº¯Êý·ÃÎÊ¡£ËüÊÇÒ»¸ö±¾µØµÄÈ«¾Ö±äÁ¿¡£
    ......

¶Ô¶þ¼¶cµÄÎÞÓï(Öйúʽ¿¼ÊÔ!!)

×î½üÔÚcsdnµÄÂÛ̳ÉÏ·¢ÁËÕâÑùÒ»¸öÌû×ÓÈçÏÂ
int a=5;
a*=a/=a++;
ÎÒÔÚÒ»±¾¶þ¼¶cµÄÊéÉÏ¿´µ½µÄ´ð°¸ÊÇ2 ÓÉÓÚÎÒ¶Ô´ËÌâ²¢²»ÊÇÊ®·ÖÀí½â ËùÒÔÔÚÂÛ̳ÉÏ·¢±í ¿´ÓÐûÓÐÈËÄÜ°ï׎âÊÍһϠȴûÓÐÏëµ½ÒýÀ´µÄ40¶àÂ¥µÄÒ»¸ö³¤Ìù ÒÔÖÁÓÚµ½×îºóÌÖÂÛµÄÄÚÈÝÔ¶Ô¶³¬¹ýµÄÌâÄ¿±¾Éí Õæʵ²»½â,ΪʲôÕâôÓÐÕùÒéµÄÌâÈ´ÄÃÀ´¿¼ÈË,Äѵ½¶¼Òª°´¶þ¼¶cµÄvc±àÒ ......

½â¶Á¸´ÔÓµÄC/C++ÉùÃ÷[ʵսƪ]

ÕâÊÇÈëÃÅƪÖÐÌáµ½µÄÄÇÁ½Ì⣺
int * (* (*fp1) (int) ) [10];
int *( *( *arr[5])())();
½â´ðÈçÏÂ
1.int * (* (*fp1) (int) ) [10];
´ÓÍâÍùÄÚ½øÐзÖÎö
a.typedef P=(* (*fp1) (int) )£¬ÄÇôԭÉùÃ÷¸ÄдΪ int*P[10]£¬ÕâÊÇÒ»¸öÓÐ10¸öÔªËصÄÊý×飬ÿ¸öÔªËض¼ÊÇÒ»¸öÖ¸ÏòÕûÐÍÊýµÄÖ¸Õë
b.typedef Q=(*fp1)£¬ÄÇôP¸ÄдΪ *Q( ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ