¼±ÎʸöcµÄÃæÊÔÌâ
C/C++ code:
void p1(const char **pname)
{
const char *name = "test1";
*pname = name;
}
void p2(const char **pname)
{
char *name = "test2";
*pname = name;
}
void p3(const char **pname)
{
char name[] = "test3";
*pname = name;
}
int main()
{
const char *name;
p1(&name);
printf("%s\n",name);
p2(&name);
printf("%s\n",name);
p3(&name);
printf("%s\n",name);
return 0;
}
´ð°¸ÊÇ test1 ºÍ test2¶¼ÄÜ´òÓ¡³öÀ´ test3²»ÄÜ´òÓ¡ÊÇgarbage
˵string¡°test1¡±ºÍ"test2"¶¼ÊÇglobal allocated onstatant
string"test3"ÊÇÔÚstackÉϵÄ
ÎÒ¾õµÃÕâ¸ö²»¶Ô°É~~
mainÀïÃæµÄconst char*name; ¼ÈÈ»const ¶¨ÒåµÄʱºò¾ÍÓ¦¸ÃÂíÉϸ³Öµ°É~
ÎÒ¾õµÃ"test1","test2","test3" ¶¼ÊÇÔÚstackÉϵÄ
Çë¸ßÈËÖ¸µã
лл
p1 p2ÖеÄname¶¼ÊÇÖ¸Õ룬ָÏòÁ˳£Á¿×Ö·û´®£¬Õâ¸öµØÖ·ÊÇÈ«¾ÖµÄ£¬²»»áÏú»Ù¡£
p3ÖÐnameÊǸöÊý×飬ÔÚstackÖУ¬²¢Óó£Á¿×Ö·û´®¸³Öµ¡£nameµÄµØÖ·²»Êdz£Á¿×Ö·û´®µÄµØÖ·£¬ËùÒÔº¯ÊýÍ˳öºóÏú»ÙÁË¡£
ȷʵ¿ÉÒÔ´ò³öÀ´£¬Ö¸ÕënameÊÇÔÚstackÉÏ£¬µ«¡°test1","test2"ÕâЩ×Ö·û´®ÊÇÔÚ¾²Ì¬´æÖüÇø
ËùÓеÄ×Ö·û´®×ÖÃæÖµ¶¼ÊÇ·ÖÅäÔÚ³£Á¿ÇøµÄ£¬ÕâÈý¸ö¶¼ÊÇÔÚ³£Á¿ÇøµÄ£¬Ç°Á½¸öÊǶ¨ÒåÖ¸ÕëÖ±½ÓÖ¸ÏòÕâ¿é³£Á¿Çø£¬ËùÒÔÄÜ´ò³öÀ´£¬µÚÈý¸öÊÇÏÈ·ÖÅäÒ»¸öÊý×éÈ»º
Ïà¹ØÎÊ´ð£º
ÒÔǰÔÚVCÀïÃæ½¨Ò»¸ö¹¤³Ì£¬¶¼Ö»ÓÃÒ»¸ö .c Îļþ£¬×òÌìÔÚÒ»¸ö¹¤³ÌÀïÓÃÁËÁ½¸ö .cÎļþÁË£¬Óöµ½ÎÊÌâÁË£¬Çë´ó¼ÒÖ¸µã¡£±ÈÈ磺
File1.c Fil ......
Çë¸÷λ´óÏÀÏêϸ½²½âÒ»ÏÂÔÚVBAÖÐSUM(R[-11]C:R[-1]C)µÄ¾ßÌ庬ÒåºÍÓ÷¨£¬ÎÒÏë°ÑÀïÃæµÄ11»»³É±äÁ¿Ôõô°ì£¿
ÇóÒ»¸ö·¶Î§ÖеÄÊý¾ÝµÄºÍ,µ«ÕâÀïÃæµÄÕâ¸ö·¶Î§R[-11]C:R[-1]C...,µÚ1ÐÐCÁÐÖÁÿ11ÐÐCÁÐ?
ûÕâÑùÓùý...
......
DWORD dwMagic;
DWORD i;
BYTE dwCode;
DWORD dwAddr;
dwStartMap = SH->VirtualAddress + (DWORD)MapOfFile;//¶ÎÏÖÔÚÊ×µØÖ·
dwEndMap = SH->Misc.VirtualSize + dwStartMap;//¶ÎÏÖ ......
#include <stdio.h>
#include <graphics.h>
void main()
{
int x0,y0,x1,y1,driver,mode,i;
driver=VGA;
mode=VGAHI;
initgraph(&driver,&mode,&qu ......