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

ÉîÈëC/C++Ö®»ùÓÚCheckStackVarsµÄ°²È«¼ì²é£¨VS2008£©

×î½üһֱæ±ÏÒµµÄÏà¹ØÊÂÇ飬¼ÓÉϹ¤×÷£¬×ªÑۼ䣬ÓÖµ½Ôµ×ÁË£¬Ö®Ç°³ÐŵµÄÿÔÂһƪ²©ÎÄ£¬Ç°¼¸Ìì¾ÍÒ»Ö±ÔÚѰÕÒµ½µ×Ҫдʲô£¬½üÁ½ÌìÓÖͻȻ·¢ÏÖÓкܶණÎ÷¿ÉÒÔд¡£±¾Æª¾ÍÏÈÑÓÐøÖ®Ç°µÄһƪ»ùÓÚCookieµÄ°²È«¼ì²é»úÖÆ£¨ÉîÈëC/C++Ö®»ùÓÚCookieµÄ°²È«¼ì²é£¨VS2005£©£©À´½éÉÜÏÂÁíÍâÒ»ÖÖÔÚDEBUG°æ±¾Ïµİ²È«¼ì²é£¬Ò²¾ÍÊÇCheckStackVars¼ì²é£¬»°²»¶à˵£¬Ö±½Ó½øÈëÕýÌâ¡£
ÔÚVS2008Ï£¬º¯ÊýµÄÕ»¿Õ¼äÀïÈç¹û´æÔÚÊý×飬¾Í»á×Ô¶¯¼ÓÉÏCheckStackVars¼ì²é£¬¹ËÃû˼Ò壬¾ÍÊÇÓÃÀ´¼ì²é¾Ö²¿Êý¾ÝÊÇ·ñ·ÃÎÊÔ½½ç¡£Ïà¶ÔÀ´Ëµ£¬ÕâÖÖ¼ì²éÖ»ÄÜÆðµ½Ò»¶¨µÄ×÷Ó㬲¢²»»áËùÓÐÔ½½ç·ÃÎʶ¼Äܼì²éµ½£¬¸ù¾ÝºóÃæµÄÔ­Àí½éÉÜ»áÁ˽⵽Õâµã¡£¼ÈÈ»ÊǼì²é¾Ö²¿µÄ£¬ÄÇôÔÚº¯ÊýÄÚ¶¨ÒåµÄstaticÀàÐÍÊý×é»òÕߺ¯ÊýÍⲿµÄÈ«¾ÖÊý×é²¢²»»á²ÉÓô˼ì²é£¬¼ÈÈ»ÊǼì²éÊý×飬ÄÇôÈç¹ûº¯ÊýÄÚûÓоֲ¿Êý×éʱ£¬´Ë¼ì²éÒ²²»»á´æÔÚ¡£
Ê×ÏÈÀ´¿´Ò»¸ö¼òµ¥µÄÀý×Ó£¬ÑéÖ¤Õâ¸ö¼ì²éµÄ´æÔÚ£º
void TestVars( void )
{
    int bf = 0xeeeeeeee;
    char array[10] = { 0 };
    int bk = 0xffffffff;
   
    strcpy( array, "masefee" );
}
int main( void )
{
    TestVars();
    return 0;
}
ÔÚÕâ¸öÀý×ÓÖУ¬´æÔÚÒ»¸öÊý×éarray£¬ÕâÀï¿ÌÒⶨÒåÁËÁíÍâÁ½¸ö±äÁ¿£¬ÓÃÓÚ¿´ÕâÁ½¸ö±äÁ¿ÓëÊý×éarrayµÄÄÚ´æ·Ö²¼Çé¿ö¡£ÕâÑù¾ÍÄÜÇåÎúµÄÁ˽⵽CheckStackVarsÕâ¸ö¼ì²éµÄÔ­Àí¡£È»ºóÀ´¿´¿´DebugÏ£¬TestVarsº¯ÊýÄÚ²¿µÄ3¸ö¾Ö²¿±äÁ¿µÄÄÚ´æ·Ö²¼Çé¿ö¡£¶Ïµã´òÔÚstrcpyÕâ¾äÉÏ£¬·Ö²¼ÈçÏ£º
ff ff ff ff cc cc cc cc cc cc cc cc 00 00 00 00 00 00 00 00 00 00cc cc cc cc cc cc cc cc cc cc ee ee ee ee  
   bk                                                           array                                &nbs


Ïà¹ØÎĵµ£º

ÈçºÎʹÓ÷ºÐÍÄ£擬virtual? (C/C++) (template)

ÍøÉÏÒ»µÀ½ðɽµÄÃæÊÔÌ⣺
http://topic.csdn.net/u/20100524/14/0eff992a-2849-4db6-bdaa-d4a200e79b7c.html
Çë·Ö±ðÓÃC++µÄÃæÏò¶ÔÏóºÍ·ºÐÍ»úÖÆ£¬±àдʵÏÖTemplate MethodģʽµÄʾÀý´úÂ룬²¢±È½ÏÁ½ÖÖ·½Ê½¸÷×ÔµÄÓÅȱµã¡£
ÓÃÐ麯ÊýʵÏÖTemplate MethodµÄ·½Ê½¾Í²»¶à˵ÁË¡£Ó÷ºÐ͵ķ½Ê½ÊµÏÖ¶à̬ÔÚATLÀïÃæÓдóÁ¿µÄÓõ½£¡
·ºÐ͵ ......

²Ù×÷ϵͳѧϰ±Ê¼Ç(14) CºÍ»ã±àÏ໥µ÷ÓÃ

; ±àÒëÁ´½Ó·½·¨
; (ld µÄ‘-s’Ñ¡ÏîÒâΪ“strip all”)
; gcc -c not link
;
; [root@XXX XXX]# nasm -f elf foo.asm -o foo.o
; [root@XXX XXX]# gcc -c bar.c -o bar.o
; [root@XXX XXX]# ld -s foo.o bar.o -o foobar
; [root@XXX XXX]# ./foobar
; the 2nd one
; [root@XXX XXX]#
exter ......

extern "C"

extern "C"
extern "C"°üº¬Ë«Öغ¬Ò壬ÆäÒ»£º±»ËüÐÞÊεÄÄ¿±êÊÇ“extern”µÄ£»Æä¶þ£º±»ËüÐÞÊεÄÄ¿±êÊÇ“C”µÄ¡£
1£©±»extern “C”ÏÞ¶¨µÄº¯Êý»ò±äÁ¿ÊÇexternÀàÐ͵ģ»
    externÊÇC/C++ÓïÑÔÖбíÃ÷º¯ÊýºÍÈ«¾Ö±äÁ¿×÷Ó÷¶Î§£¨¿É¼ûÐÔ£©µÄ¹Ø¼ü×Ö£¬¸Ã¹Ø¼ü×Ö¸æËß±àÒëÆ÷£¬ÆäÉùÃ÷µÄº¯ ......

±ê×¼c(c89,c99)Ô­À´²»Ö§³Öȱʡ²ÎÊý

±àÒëÒ»¸öͼÏó½Ó¿Ú¿â£¬ÆäÖÐÓõ½cvSaveImage( out_img_name, img); ±àÒ뱨´í£º
too few arguments to function cvSaveImage
Ò»ÏÂ×ӾͺýÍ¿ÁË£¬´ÓÀ´¶¼ÊÇÕâôÓà cvSaveImage µÄ¡£highgui.hÀïµÄº¯ÊýÔ­ÐÍÒ²ÊǶ¨ÒåÁËȱʡµÄ£¬
CVAPI(int) cvSaveImage(const char*  filename, const CvArr* image, const int* params CV_DEFA ......

20100527 CÏÝÚåÓëȱÏݶÁÊé±Ê¼Ç£¨Ò»¡¢¶þÕ£©

  µÚÒ»Õ£º´Ê·¨“ÏÝÚå”
  ×Öĸ±¾ÉíûÓÐÒâ˼£¬µ«Êǽ«×Öĸ×é³ÉµÄµ¥´Ê¾Í±»¸³ÓèÁËÒâÒå¡£ÔÚCÓïÑÔÖУ¬×Ö·û×éºÏ³ÉÁËÕû¸ö´úÂ룬ÓÉ×Ö·ûÊéд´øÀ´µÄ±ÊÎó»á´øÀ´²»ÉÙÂé·³¡£×÷Ϊ³ÌÐòÔ±£¬²»ÄÜÖ¸Íû¿¿±àÒëÆ÷À´ÌáÐÑ¡£Òò´Ë£¬ÐèҪעÒ⣺
  1.CÓïÑÔÖУ¬·ûºÅÖ®¼äµÄ¿Õ°×£¨°üÀ¨¿Õ¸ñ·û£¬ÖƱí·û£¬»»Ðзû£© ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ