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

¡¾C/C++¡¿×᳣ܽÓõĺ¯Êýµ÷ÓÃÔ¼¶¨

Ò»¡¢º¯Êýµ÷ÓõĻù±¾²½Öè
º¯Êýµ÷ÓôóÖ°üÀ¨ÒÔϼ¸¸ö²½Öè¡£
£¨1£©²ÎÊýÈëÕ»£º½«²ÎÊý´ÓÓÒÏò×óÒÀ´ÎѹÈëϵͳջÖС£
£¨2£©·µ»ØµØÖ·ÈëÕ»£º½«µ±Ç°´úÂëÇøµ÷ÓÃÖ¸ÁîµÄÏÂÒ»ÌõÖ¸ÁîµØÖ·Ñ¹ÈëÕ»ÖУ¬¹©º¯Êý·µ»ØÊ±¼ÌÐøÖ´ÐС£
£¨3£©´úÂëÇøÌø×ª£º´¦ÀíÆ÷´Óµ±Ç°´úÂëÇøÌø×ªµ½±»µ÷Óú¯ÊýµÄÈë¿Ú´¦¡£
£¨4£©Õ»Ö¡µ÷Õû£º¾ßÌå°üÀ¨£º
±£´æµ±Ç°Õ»Ö¡×´Ì¬Öµ£¬Òѱ¸ºóÃæ»Ö¸´±¾Õ»Ö¡Ê±Ê¹Óã¨EBPÈëÕ»£©¡£
½«µ±Ç°Õ»Ö¡Çл»µ½ÐÂÕ»Ö¡£¨½«ESPÖµ×°ÈëEBP£¬¸üÐÂÕ»Ö¡µ×²¿£©¡£
¸øÐÂÕ»Ö¡·ÖÅä¿Õ¼ä£¨°ÑESP¼õÈ¥ËùÐè¿Õ¼äµÄ´óС£¬Ì§¸ßÕ»¶¥£©¡£
¶þ¡¢º¯Êýµ÷ÓÃÔ¼¶¨£º
µ÷ÓÃÔ¼¶¨µÄÉùÃ÷
²ÎÊýÈëջ˳Ðò
»Ö¸´Õ»Æ½ºâµÄλÖÃ
__cdecl
ÓÒ→×ó
ĸº¯Êý
__fastcall
ÓÒ→×ó
×Óº¯Êý
__stdcall
ÓÒ→×ó
×Óº¯Êý
Èý¡¢¾ßÌåµÄ±íÏÖ
£¨1£© __cdecl
       º¯Êý±¾Éí²»ÇåÀí¶ÑÕ»£¬µ÷ÓÃÕ߸ºÔðÇåÀí¶ÑÕ»¡£ÓÉÓÚÕâÖֱ仯£¬Cµ÷ÓÃÔ¼¶¨ÔÊÐíº¯ÊýµÄ²ÎÊýµÄ¸öÊýÊDz»¹Ì¶¨µÄ
£¨2£© __fastcall
      º¯ÊýµÄµÚÒ»¸öºÍµÚ¶þ¸öDWORD²ÎÊý£¨»òÕ߳ߴç¸üСµÄ£©Í¨¹ýecxºÍedx´«µÝ£¬ÆäËû²ÎÊýͨ¹ý´ÓÓÒÏò×óµÄ˳Ðòѹջ
      ±»µ÷Óú¯ÊýÇåÀí¶ÑÕ»
£¨3£© __stdcall
     ²ÎÊý´ÓÓÒÏò×óѹÈë¶ÑÕ»
     º¯Êý×ÔÉíÐ޸ĶÑÕ»
ËÄ¡¢VCϵıíÏÖ
      ÔÚVCµÄ¹¤³ÌÉèÖÃÖпÉÒÔÉèÖú¯Êýµ÷Ó÷½Ê½£¬´Ó±íÏÖ¿ÉÒÔ¿´³öÃ÷ÏԵIJî±ð¡£
£¨1£©Èç¹ûÉèÖóÉ__cdecl*£¬ÄÇô¶ÔÓÚÏÂÃæµÄ´úÂ룬»ã±à±íÏÖΪ£º
       00402692   push        8
00402694   push        5
00402696   push        3
00402698   call        @ILT+275(GetNum) (00401118)
0040269D   add         esp,0Ch
£¨2£©Èç¹ûÉèÖóÉ__stdcall£¬ÄÇô¶ÔÓÚÏÂÃæµÄ´úÂ룬»ã±à±íÏÖΪ£º
00402692   push        8
00402694   push        5
00402696   push        3
00402698   call        @ILT+280(GetNum) (0040111d)
£¨3£©Èç¹ûÉèÖóÉ__fastcall£¬ÄÇô¶ÔÓÚÏÂÃæµÄ´úÂ룬»ã±à±íÏÖΪ£º
00402692   push        8
00402694   mov      


Ïà¹ØÎĵµ£º

VIM+GDB linux c/c++ µÄ±à³ÌÀûÆ÷

ÆäʵVIMÒ²ÄܰѱàÒë µ÷ÊÔ¼¯³ÉÔÚÒ»Æð£¬ÏñÊÇÒ»¸öIDEÒ»Ñù¡£
Ê×ÏÈÏÖÔÚVIMµÄÔ´Â룬ÒòΪҪ¼¯³Éµ÷ÊÔ»·¾³µÄ»°ÐèÒªÖØÐ±àÒëVIM²ÅÐУ¬ËùÒÔÎÒÃDz»ÈçÖØÐ°²×°Ò»¸ö¡£
VIMµÄÏÖÔÚµØÖ·£º
http://www.vim.org/sources.php
È»ºóÏÂÔØVIMGDB£¬ÕâÊÇvimµÄ¼¯³Éµ÷ÊÔ»·¾³µÄÒ»¸öÖØÒª²å¼þ³ÌÐò¡£
µØÖ·£ºhttp://sourceforge.net/projects/clewn/files ......

C++ÖÐextern ¡°C¡±º¬ÒåÉî²ã̽Ë÷

1.ÒýÑÔ
¡¡¡¡C++ÓïÑԵĴ´½¨³õÖÔÊÇ“a better C”£¬µ«ÊÇÕâ²¢²»Òâζ×ÅC++ÖÐÀàËÆCÓïÑÔµÄÈ«¾Ö±äÁ¿ºÍº¯ÊýËù²ÉÓõıàÒëºÍÁ¬½Ó·½Ê½ÓëCÓïÑÔÍêÈ«Ïàͬ¡£×÷ΪһÖÖÓûÓëC¼æÈݵÄÓïÑÔ£¬C++±£ÁôÁËÒ»²¿·Ö¹ý³ÌʽÓïÑÔµÄÌØµã(±»ÊÀÈ˳ÆÎª“²»³¹µ×µØÃæÏò¶ÔÏó”)£¬Òò¶øËü¿ÉÒÔ¶¨Òå²»ÊôÓÚÈκÎÀàµÄÈ«¾Ö±äÁ¿ºÍº¯Êý¡£µ«ÊÇ£¬C++±Ï¾¹Ê ......

C\C++Ïà¹ØÎÊÌâÕûÀí£¨1£©

Ëæ»úÉú³ÉÕûÊý£¬È»ºóËã³öÕý¸ºÁã
void getrand(int *a, int m)
{
    int i;
    srand(time(NULL));
    for (i=0; i<m; i++)
    {
        a = rand()-rand();
    }
}
int main(int argc, char* argv[])
{
    ......

VIM+GDB linux c/c++ µÄ±à³ÌÀûÆ÷

Ô­ÎÄ£ºhttp://blog.csdn.net/jackyvan/archive/2010/01/15/5193693.aspx
ÆäʵVIMÒ²ÄܰѱàÒë µ÷ÊÔ¼¯³ÉÔÚÒ»Æð£¬ÏñÊÇÒ»¸öIDEÒ»Ñù¡£
Ê×ÏÈÏÖÔÚVIMµÄÔ´Â룬ÒòΪҪ¼¯³Éµ÷ÊÔ»·¾³µÄ»°ÐèÒªÖØÐ±àÒëVIM²ÅÐУ¬ËùÒÔÎÒÃDz»ÈçÖØÐ°²×°Ò»¸ö¡£
VIMµÄÏÖÔÚµØÖ·£º
http://www.vim.org/sources.php
È»ºóÏÂÔØVIMGDB£¬ÕâÊÇvimµÄ¼¯³Éµ÷ÊÔ»·¾³µÄ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ