| ²é¿´: 1490 | »Ø¸´: 9 | |||
| ±¾Ìû²úÉú 1 ¸ö ³ÌÐòÇ¿Ìû £¬µã»÷ÕâÀï½øÐв鿴 | |||
| µ±Ç°Ö»ÏÔʾÂú×ãÖ¸¶¨Ìõ¼þµÄ»ØÌû£¬µã»÷ÕâÀï²é¿´±¾»°ÌâµÄËùÓлØÌû | |||
snowboy9859½ð³æ (ÕýʽдÊÖ)
|
[½»Á÷]
¡¾·ÖÏí¡¿¶ÑºÍÕ»µÄÇø±ð ÒÑÓÐ8È˲ÎÓë
|
||
|
Ò»¡¢Ô¤±¸ÖªÊ¶¡ª³ÌÐòµÄÄÚ´æ·ÖÅä Ò»¸öÓÉ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£» È«¾Ö£¨¾²Ì¬£©³õʼ»¯Çø p1 = (char *)malloc(10); p2 = (char *)malloc(20); ·ÖÅäµÃÀ´µÃ10ºÍ20×Ö½ÚµÄÇøÓò¾ÍÔÚ¶ÑÇø¡£ strcpy(p1, "123456" ; 123456\0·ÅÔÚ³£Á¿Çø£¬±àÒëÆ÷¿ÉÄܻὫËüÓëp3ËùÖ¸ÏòµÄ"123456"ÓÅ»¯³ÉÒ»¸öµØ·½¡£ } ¶þ¡¢¶ÑºÍÕ»µÄÀíÂÛ֪ʶ 2.1ÉêÇ뷽ʽ stack: ÓÉϵͳ×Ô¶¯·ÖÅä¡£ ÀýÈ磬ÉùÃ÷ÔÚº¯ÊýÖÐÒ»¸ö¾Ö²¿±äÁ¿ int b; ϵͳ×Ô¶¯ÔÚÕ»ÖÐΪb¿ª±Ù¿Õ¼ä heap: ÐèÒª³ÌÐòÔ±×Ô¼ºÉêÇ룬²¢Ö¸Ã÷´óС£¬ÔÚcÖÐmallocº¯Êý Èçp1 = (char *)malloc(10); ÔÚC++ÖÐÓÃnewÔËËã·û Èçp2 = (char *)malloc(10); µ«ÊÇ×¢Òâp1¡¢p2±¾ÉíÊÇÔÚÕ»Öеġ£ 2.2 ÉêÇëºóϵͳµÄÏìÓ¦ Õ»£ºÖ»ÒªÕ»µÄÊ£Óà¿Õ¼ä´óÓÚËùÉêÇë¿Õ¼ä£¬ÏµÍ³½«Îª³ÌÐòÌṩÄڴ棬·ñÔò½«±¨Òì³£ÌáʾջÒç³ö¡£ ¶Ñ£ºÊ×ÏÈÓ¦¸ÃÖªµÀ²Ù×÷ϵͳÓÐÒ»¸ö¼Ç¼¿ÕÏÐÄÚ´æµØÖ·µÄÁ´±í£¬µ±ÏµÍ³ÊÕµ½³ÌÐòµÄÉêÇëʱ£¬ »á±éÀú¸ÃÁ´±í£¬Ñ°ÕÒµÚÒ»¸ö¿Õ¼ä´óÓÚËùÉêÇë¿Õ¼äµÄ¶Ñ½áµã£¬È»ºó½«¸Ã½áµã´Ó¿ÕÏнáµãÁ´±íÖÐɾ³ý£¬²¢½«¸Ã½áµãµÄ¿Õ¼ä·ÖÅ䏸³ÌÐò£¬ÁíÍ⣬¶ÔÓÚ´ó¶àÊýϵͳ£¬»áÔÚÕâ¿éÄÚ´æ¿Õ¼äÖеÄÊ×µØÖ·´¦¼Ç¼±¾´Î·ÖÅäµÄ´óС£¬ÕâÑù£¬´úÂëÖеÄdeleteÓï¾ä²ÅÄÜÕýÈ·µÄÊͷű¾ÄÚ´æ¿Õ¼ä¡£ÁíÍ⣬ÓÉÓÚÕÒµ½µÄ¶Ñ½áµãµÄ´óС²»Ò»¶¨ÕýºÃµÈÓÚÉêÇëµÄ´óС£¬ÏµÍ³»á×Ô¶¯µÄ½«¶àÓàµÄÄDz¿·ÖÖØÐ·ÅÈë¿ÕÏÐÁ´±íÖС£ 2.3ÉêÇë´óСµÄÏÞÖÆ Õ»£ºÔÚWindowsÏÂ,Õ»ÊÇÏòµÍµØÖ·À©Õ¹µÄÊý¾Ý½á¹¹£¬ÊÇÒ»¿éÁ¬ÐøµÄÄÚ´æµÄÇøÓò¡£Õâ¾ä»°µÄÒâ˼ÊÇÕ»¶¥µÄµØÖ·ºÍÕ»µÄ×î´óÈÝÁ¿ÊÇϵͳԤÏȹ涨ºÃµÄ£¬ÔÚWINDOWSÏ£¬Õ»µÄ´óСÊÇ2M£¨Ò²ÓеÄ˵ÊÇ1M£¬×ÜÖ®ÊÇÒ»¸ö±àÒëʱ¾ÍÈ·¶¨µÄ³£Êý£©£¬Èç¹ûÉêÇëµÄ¿Õ¼ä³¬¹ýÕ»µÄÊ£Óà¿Õ¼äʱ£¬½«Ìáʾoverflow¡£Òò´Ë£¬ÄÜ´ÓÕ»»ñµÃµÄ¿Õ¼ä½ÏС¡£ ¶Ñ£º¶ÑÊÇÏò¸ßµØÖ·À©Õ¹µÄÊý¾Ý½á¹¹£¬ÊDz»Á¬ÐøµÄÄÚ´æÇøÓò¡£ÕâÊÇÓÉÓÚϵͳÊÇÓÃÁ´±íÀ´´æ´¢µÄ¿ÕÏÐÄÚ´æµØÖ·µÄ£¬×ÔÈ»ÊDz»Á¬ÐøµÄ£¬¶øÁ´±íµÄ±éÀú·½ÏòÊÇÓɵ͵ØÖ·Ïò¸ßµØÖ·¡£¶ÑµÄ´óСÊÜÏÞÓÚ¼ÆËã»úϵͳÖÐÓÐЧµÄÐéÄâÄÚ´æ¡£Óɴ˿ɼû£¬¶Ñ»ñµÃµÄ¿Õ¼ä±È½ÏÁé»î£¬Ò²±È½Ï´ó¡£ 2.4ÉêÇëЧÂʵıȽϣº Õ»ÓÉϵͳ×Ô¶¯·ÖÅ䣬ËٶȽϿ졣µ«³ÌÐòÔ±ÊÇÎÞ·¨¿ØÖƵġ£ ¶ÑÊÇÓÉnew·ÖÅäµÄÄڴ棬һ°ãËٶȱȽÏÂý£¬¶øÇÒÈÝÒײúÉúÄÚ´æË鯬,²»¹ýÓÃÆðÀ´×î·½±ã. ÁíÍ⣬ÔÚWINDOWSÏ£¬×îºÃµÄ·½Ê½ÊÇÓÃVirtualAlloc·ÖÅäÄڴ棬Ëû²»ÊÇÔÚ¶Ñ£¬Ò²²»ÊÇÔÚÕ»ÊÇÖ±½ÓÔÚ½ø³ÌµÄµØÖ·¿Õ¼äÖб£ÁôÒ»¿ìÄڴ棬ËäÈ»ÓÃÆðÀ´×î²»·½±ã¡£µ«ÊÇËٶȿ죬Ҳ×îÁé»î¡£ 2.5¶ÑºÍÕ»ÖеĴ洢ÄÚÈÝ Õ»£º ÔÚº¯Êýµ÷ÓÃʱ£¬µÚÒ»¸ö½øÕ»µÄÊÇÖ÷º¯ÊýÖкóµÄÏÂÒ»ÌõÖ¸Áº¯Êýµ÷ÓÃÓï¾äµÄÏÂÒ»Ìõ¿ÉÖ´ÐÐÓï¾ä£©µÄµØÖ·£¬È»ºóÊǺ¯ÊýµÄ¸÷¸ö²ÎÊý£¬ÔÚ´ó¶àÊýµÄC±àÒëÆ÷ÖУ¬²ÎÊýÊÇÓÉÓÒÍù×óÈëÕ»µÄ£¬È»ºóÊǺ¯ÊýÖеľֲ¿±äÁ¿¡£×¢Ò⾲̬±äÁ¿ÊDz»ÈëÕ»µÄ¡£ µ±±¾´Îº¯Êýµ÷ÓýáÊøºó£¬¾Ö²¿±äÁ¿ÏȳöÕ»£¬È»ºóÊDzÎÊý£¬×îºóÕ»¶¥Ö¸ÕëÖ¸Ïò×ʼ´æµÄµØÖ·£¬Ò²¾ÍÊÇÖ÷º¯ÊýÖеÄÏÂÒ»ÌõÖ¸Á³ÌÐòÓɸõã¼ÌÐøÔËÐС£ ¶Ñ£ºÒ»°ãÊÇÔڶѵÄÍ·²¿ÓÃÒ»¸ö×Ö½Ú´æ·Å¶ÑµÄ´óС¡£¶ÑÖеľßÌåÄÚÈÝÓгÌÐòÔ±°²ÅÅ¡£ 2.6´æÈ¡Ð§ÂÊµÄ±È½Ï char s1[] = "aaaaaaaaaaaaaaa"; char *s2 = "bbbbbbbbbbbbbbbbb"; aaaaaaaaaaaÊÇÔÚÔËÐÐʱ¿Ì¸³ÖµµÄ£» ¶øbbbbbbbbbbbÊÇÔÚ±àÒëʱ¾ÍÈ·¶¨µÄ£» µ«ÊÇ£¬ÔÚÒÔºóµÄ´æÈ¡ÖУ¬ÔÚÕ»ÉϵÄÊý×é±ÈÖ¸ÕëËùÖ¸ÏòµÄ×Ö·û´®(ÀýÈç¶Ñ)¿ì¡£ ±ÈÈ磺 #include void main() { char a = 1; char c[] = "1234567890"; char *p ="1234567890"; a = c[1]; a = p[1]; return; } ¶ÔÓ¦µÄ»ã±à´úÂë 10: a = c[1]; 00401067 8A 4D F1 mov cl,byte ptr [ebp-0Fh] 0040106A 88 4D FC mov byte ptr [ebp-4],cl 11: a = p[1]; 0040106D 8B 55 EC mov edx,dword ptr [ebp-14h] 00401070 8A 42 01 mov al,byte ptr [edx+1] 00401073 88 45 FC mov byte ptr [ebp-4],al µÚÒ»ÖÖÔÚ¶Áȡʱֱ½Ó¾Í°Ñ×Ö·û´®ÖеÄÔªËØ¶Áµ½¼Ä´æÆ÷clÖУ¬¶øµÚ¶þÖÖÔòÒªÏȰÑÖ¸ÕëÖµ¶Áµ½edxÖУ¬ÔÚ¸ù¾Ýedx¶ÁÈ¡×Ö·û£¬ÏÔÈ»ÂýÁË¡£ 2.7С½á£º ¶ÑºÍÕ»µÄÇø±ð¿ÉÒÔÓÃÈçϵıÈÓ÷À´¿´³ö£º ʹÓÃÕ»¾ÍÏóÎÒÃÇÈ¥·¹¹ÝÀï³Ô·¹£¬Ö»¹Üµã²Ë£¨·¢³öÉêÇ룩¡¢¸¶Ç®¡¢ºÍ³Ô£¨Ê¹Óã©£¬³Ô±¥Á˾Í×ߣ¬²»±ØÀí»áÇвˡ¢Ï´²ËµÈ×¼±¸¹¤×÷ºÍÏ´Í롢ˢ¹øµÈɨβ¹¤×÷£¬ËûµÄºÃ´¦ÊÇ¿ì½Ý£¬µ«ÊÇ×ÔÓɶÈС¡£ ʹÓöѾÍÏóÊÇ×Ô¼º¶¯ÊÖ×öϲ»¶³ÔµÄ²ËëÈ£¬±È½ÏÂé·³£¬µ«ÊDZȽϷûºÏ×Ô¼ºµÄ¿Ú棬¶øÇÒ×ÔÓÉ¶È´ó¡£ |
» ²ÂÄãϲ»¶
327Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
361Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
Ò»Ö¾Ô¸ÖÐÄÏ´óѧ»¯Ñ§Ñ§Ë¶0703×Ü·Ö337Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
Ò»Ö¾Ô¸±±¾©»¯¹¤´óѧ 070300 ѧ˶ 336·Ö Çóµ÷¼Á
ÒѾÓÐ6È˻ظ´
²ÄÁÏרҵÇóµ÷¼Á
ÒѾÓÐ10È˻ظ´
341Çóµ÷¼Á(Ò»Ö¾Ô¸ºþÄÏ´óѧ070300)
ÒѾÓÐ5È˻ظ´
0854 ¿¼Ñе÷¼Á ÕÐÉúÁË£¡AI ·½Ïò
ÒѾÓÐ15È˻ظ´
384Çóµ÷¼Á
ÒѾÓÐ6È˻ظ´
ÉúÎïѧѧ˶Çóµ÷¼Á
ÒѾÓÐ4È˻ظ´
081700 µ÷¼Á 267·Ö
ÒѾÓÐ6È˻ظ´

cjs520
гæ (ÕýʽдÊÖ)
- Ó¦Öú: 1 (Ó×¶ùÔ°)
- ½ð±Ò: 2276.5
- ºì»¨: 2
- Ìû×Ó: 365
- ÔÚÏß: 90.2Сʱ
- ³æºÅ: 455540
- ×¢²á: 2007-11-10
- רҵ: ¿ØÖÆÀíÂÛÓë·½·¨

9Â¥2010-07-24 07:34:26
tjyl
½ð³æ (ÕýʽдÊÖ)
- ³ÌÐòÇ¿Ìû: 2
- Ó¦Öú: 0 (Ó×¶ùÔ°)
- ½ð±Ò: 3218.1
- ºì»¨: 2
- Ìû×Ó: 576
- ÔÚÏß: 156.6Сʱ
- ³æºÅ: 765184
- ×¢²á: 2009-05-07
- רҵ: ÉúÎïÎÞ»ú»¯Ñ§
- ¹ÜϽ: ³ÌÐòÓïÑÔ
¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
resonant(½ð±Ò+1):»¶Ó²ÎÓëÌÖÂÛ¡£ 2010-05-28 21:59:40
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
resonant(½ð±Ò+1):»¶Ó²ÎÓëÌÖÂÛ¡£ 2010-05-28 21:59:40
| ÓÃalloca¿ÉÒÔ´ÓÕ»¿Õ¼ä·ÖÅäÄÚ´æ |
3Â¥2010-05-28 14:36:16
wanglifei007
½ð³æ (ÕýʽдÊÖ)
- Ó¦Öú: 0 (Ó×¶ùÔ°)
- ½ð±Ò: 683.4
- É¢½ð: 50
- ºì»¨: 2
- Ìû×Ó: 491
- ÔÚÏß: 28.8Сʱ
- ³æºÅ: 487773
- ×¢²á: 2007-12-28
- רҵ: Ô×ӺͷÖ×ÓÎïÀí
¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
| Õâ¸öºÜºÃÇø·Ö£¬²»¹ýÎÒ»¹Ã»Óûã±àÀ´Ñо¿¹ý£¬Ð»Ð»Â¥Ö÷ÁË¡£ |
4Â¥2010-05-29 12:07:51
holmescn
½ð³æ (ÕýʽдÊÖ)
- ³ÌÐòÇ¿Ìû: 37
- Ó¦Öú: 1 (Ó×¶ùÔ°)
- ½ð±Ò: 1918.8
- É¢½ð: 275
- ºì»¨: 1
- Ìû×Ó: 699
- ÔÚÏß: 102.6Сʱ
- ³æºÅ: 913482
- ×¢²á: 2009-11-26
- ÐÔ±ð: GG
- רҵ: Äý¾Û̬ÎïÐÔ II £ºµç×ӽṹ
¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
resonant(½ð±Ò+2):¸ÐлÌṩ£º-£© 2010-06-01 15:02:34
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
resonant(½ð±Ò+2):¸ÐлÌṩ£º-£© 2010-06-01 15:02:34
|
ÓÐÒ»µãÎÒ¸öÈËÈÏΪ²»Ì«¶Ô¡£ÄǾÍÊÇstack±Èheap¿ì¡£LZµÄ·ÖÎöÊÇҪ˵Ã÷£¬heapÓÐÉêÇëµÄ¹ý³Ì£¬Õâ¸ö¹ý³ÌÕ¼ÁËʱ¼ä¡£ËùÒÔheapÂý¡£µ«ÎÒÈÏΪÕâÊÇstackÔÚ×÷±×¡£ÒòΪstackµÄ¿Õ¼äÊÇÒѾ×Ô¶¯·ÖÅäºÃÁ˵ģ¬ËùÒÔ£¬Èç¹ûÈ¥³ýÁËÕâ¸ö»·½Ú£¬Á¬¸öµÄËÙ¶ÈÓ¦¸Ã²»ÏàÉÏÏ¡££¨ÎÒûÓÐʵ¼Ê²âÊÔ£©ËùÒÔ£¬Èç¹ûÎÒÃÇÔ¤ÏÈ·ÖÅäÒ»¿éÄڴ棬µ±ÐèÒªÓÃheapµÄʱºò£¬´ÓÕâ¸öÒѾ·ÖÅäºÃµÄÄÚ´æÀï»®·ÖÒ»¿é³öÀ´£¬ÄÇô£¬½á¹ûÓÖÈçºÎÄØ£¿ ÖÁÓÚ×îºóµÄ»ã±à·ÖÎö£¬ÎÒÏë¿ÉÄÜÊÇÒòΪ´úÂëûÓÐÓÅ»¯µÄ½á¹û¡£Ôì³ÉÖ¸Õë±äÁ¿ÓÐÒ»¸ö¼ÓÔØµÄ¹ý³Ì¡£µ«Õâ²»Ó¦¸ÃÊÇheapÂýµÄÔÒò¡£ |
5Â¥2010-06-01 14:28:16













; 123456\0·ÅÔÚ³£Á¿Çø£¬±àÒëÆ÷¿ÉÄܻὫËüÓëp3ËùÖ¸ÏòµÄ"123456"ÓÅ»¯³ÉÒ»¸öµØ·½¡£
»Ø¸´´ËÂ¥