cÓïÑÔ³£¼û±ÊÊÔÌâ¼°´ð°¸

typedef void(*)() voidFuncPtr;

*((voidFuncPtr)0x100000)();

2£¬ÒÑÖªÒ»¸öÊý×étable£¬ÓÃÒ»¸öºê¶¨Ò壬Çó³öÊý¾ÝµÄÔªËØ¸öÊý #define NTBL

#define NTBL (sizeof(table)/sizeof(table[0]))

ÃæÊÔÌâ: Ïß³ÌÓë½ø³ÌµÄÇø±ðºÍÁªÏµ? Ïß³ÌÊÇ·ñ¾ßÓÐÏàͬµÄ¶ÑÕ»? dllÊÇ·ñÓжÀÁ¢µÄ¶ÑÕ»? ½ø³ÌÊÇËÀµÄ£¬Ö»ÊÇһЩ×ÊÔ´µÄ¼¯ºÏ£¬ÕæÕýµÄ³ÌÐòÖ´Ðж¼ÊÇÏß³ÌÀ´Íê³ÉµÄ£¬³ÌÐòÆô¶¯µÄʱºò²Ù×÷ϵͳ¾Í°ïÄã´´½¨ÁËÒ»¸öÖ÷Ï̡߳£

ÿ¸öÏß³ÌÓÐ×Ô¼ºµÄ¶ÑÕ»¡£

DLL ÖÐÓÐûÓжÀÁ¢µÄ¶ÑÕ»£¬Õâ¸öÎÊÌâ²»ºÃ»Ø´ð£¬»òÕß˵Õâ¸öÎÊÌâ±¾ÉíÊÇ·ñÓÐÎÊÌâ¡£ÒòΪDLLÖеĴúÂëÊDZ»Ä³Ð©Ïß³ÌËùÖ´ÐУ¬Ö»ÓÐÏß³ÌÓµÓжÑÕ»£¬Èç¹ûDLLÖеĴúÂëÊÇ EXEÖеÄÏß³ÌËùµ÷Óã¬ÄÇôÕâ¸öʱºòÊDz»ÊÇ˵Õâ¸öDLLûÓÐ×Ô¼º¶ÀÁ¢µÄ¶ÑÕ»£¿Èç¹ûDLLÖеĴúÂëÊÇÓÉDLL×Ô¼º´´½¨µÄÏß³ÌËùÖ´ÐУ¬ÄÇôÊDz»ÊÇ˵DLLÓжÀÁ¢µÄ¶ÑÕ»£¿

ÒÔÉϽ²µÄÊǶÑÕ»£¬Èç¹û¶ÔÓÚ¶ÑÀ´Ëµ£¬Ã¿¸öDLLÓÐ×Ô¼ºµÄ¶Ñ£¬ËùÒÔÈç¹ûÊÇ´ÓDLLÖж¯Ì¬·ÖÅäµÄÄڴ棬×îºÃÊÇ´ÓDLLÖÐɾ³ý£¬Èç¹ûÄã´ÓDLLÖзÖÅäÄڴ棬ȻºóÔÚEXEÖУ¬»òÕßÁíÍâÒ»¸öDLLÖÐɾ³ý£¬ºÜÓпÉÄܵ¼Ö³ÌÐò±ÀÀ£

unsigned short A = 10; printf(\

char c=128;

printf(\

Êä³ö¶àÉÙ£¿²¢·ÖÎö¹ý³Ì

µÚÒ»Ì⣬¡«A £½0xfffffff5,intÖµ Ϊ£­11£¬µ«Êä³öµÄÊÇuint¡£ËùÒÔÊä³ö4294967285 µÚ¶þÌ⣬c£½0x10,Êä³öµÄÊÇint£¬×î¸ßλΪ1£¬ÊǸºÊý£¬ËùÒÔËüµÄÖµ¾ÍÊÇ0x00µÄ²¹Âë¾ÍÊÇ128£¬ËùÒÔÊä³ö£­128¡£

ÕâÁ½µÀÌâ¶¼ÊÇÔÚ¿¼²ì¶þ½øÖÆÏòint»òuintת»»Ê±µÄ×î¸ßλ´¦Àí¡£

·ÖÎöÏÂÃæµÄ³ÌÐò£º

void GetMemory(char **p,int num) {

*p=(char *)malloc(num); }

int main() {

char *str=NULL;

GetMemory(&str,100);

strcpy(str,\

free(str);

if(str!=NULL) {

strcpy(str,\}

printf(\getchar();

}

ÎÊÊä³ö½á¹ûÊÇʲô£¿Ï£Íû´ó¼ÒÄÜ˵˵ԭÒò£¬ÏÈллÁË

Êä³östr is world¡£

free Ö»ÊÇÊͷŵÄstrÖ¸ÏòµÄÄÚ´æ¿Õ¼ä,Ëü±¾ÉíµÄÖµ»¹ÊÇ´æÔÚµÄ.

ËùÒÔfreeÖ®ºó£¬ÓÐÒ»¸öºÃµÄϰ¹ß¾ÍÊǽ«str=NULL.

´ËʱstrÖ¸Ïò¿Õ¼äµÄÄÚ´æÒѱ»»ØÊÕ,Èç¹ûÊä³öÓï¾ä֮ǰ»¹´æÔÚ·ÖÅä¿Õ¼äµÄ²Ù×÷µÄ»°,Õâ¶Î´æ´¢¿Õ¼äÊÇ¿ÉÄܱ»ÖØÐ·ÖÅ䏸ÆäËû±äÁ¿µÄ,

¾¡¹ÜÕâ¶Î³ÌÐòȷʵÊÇ´æÔÚ´ó´óµÄÎÊÌ⣨ÉÏÃæ¸÷λÒѾ­ËµµÃºÜÇå³þÁË£©£¬µ«ÊÇͨ³£»á´òÓ¡³öworldÀ´¡£

ÕâÊÇÒòΪ£¬½ø³ÌÖеÄÄÚ´æ¹ÜÀíÒ»°ã²»ÊÇÓɲÙ×÷ϵͳÍê³ÉµÄ£¬¶øÊÇÓɿ⺯Êý×Ô¼ºÍê³ÉµÄ¡£ µ±ÄãmallocÒ»¿éÄÚ´æµÄʱºò£¬¹ÜÀí¿âÏò²Ù×÷ϵͳÉêÇëÒ»¿é¿Õ¼ä£¨¿ÉÄÜ»á±ÈÄãÉêÇëµÄ´óһЩ£©£¬È»ºóÔÚÕâ¿é¿Õ¼äÖмǼһЩ¹ÜÀíÐÅÏ¢£¨Ò»°ãÊÇÔÚÄãÉêÇëµÄÄÚ´æÇ°ÃæÒ»µã£©£¬²¢½«¿ÉÓÃÄÚ´æµÄµØÖ··µ»Ø¡£µ«ÊÇÊÍ·ÅÄÚ´æµÄʱºò£¬¹ÜÀí¿âͨ³£¶¼²»»á½«Äڴ滹¸ø²Ù×÷ϵͳ£¬Òò´ËÄãÊÇ¿ÉÒÔ¼ÌÐø·ÃÎÊÕâ¿éµØÖ·µÄ£¬Ö»²»¹ý¡£¡£¡£¡£¡£¡£¡£¡£Â¥É϶¼Ëµ¹ýÁË£¬×îºÃ±ðÕâô¸É¡£

char a[10],strlen(a)ΪʲôµÈÓÚ15£¿ÔËÐеĽá¹û

#include \#include \

void main() {

char aa[10];

printf(\}

sizeof()ºÍ³õ²»³õʼ»¯£¬Ã»ÓйØÏµ£» strlen()ºÍ³õʼ»¯Óйء£

char (*str)[20];/*strÊÇÒ»¸öÊý×éÖ¸Õ룬¼´Ö¸ÏòÊý×éµÄÖ¸Õ룮*/

char *str[20];/*strÊÇÒ»¸öÖ¸ÕëÊý×飬ÆäÔªËØÎªÖ¸ÕëÐÍÊý¾Ý£®*/

long a=0x801010; a+5=?

0x801010Óöþ½øÖƱíʾΪ£º¡°1000 0000 0001 0000 0001 0000¡±£¬Ê®½øÖƵÄֵΪ8392720£¬ÔÙ¼ÓÉÏ5¾ÍÊÇ8392725ÂÞ 1)¸ø¶¨½á¹¹struct A {

char t:4; char k:4;

unsigned short i:8; unsigned long m; };ÎÊsizeof(A) = ? ¸ø¶¨½á¹¹struct A {

char t:4; 4λ

char k:4; 4λ

unsigned short i:8; 8λ

unsigned long m; // Æ«ÒÆ2×Ö½Ú±£Ö¤4×Ö½Ú¶ÔÆë

}; // ¹²8×Ö½Ú

2)ÏÂÃæµÄº¯ÊýʵÏÖÔÚÒ»¸öÊýÉϼÓÒ»¸öÊý£¬ÓÐʲô´íÎó£¿Çë¸ÄÕý¡£ int add_n ( int n ) {

static int i = 100; i += n; return i; }

µ±ÄãµÚ¶þ´Îµ÷ÓÃʱµÃ²»µ½ÕýÈ·µÄ½á¹û£¬ÄѵÀÄãд¸öº¯Êý¾ÍÊÇΪÁ˵÷ÓÃÒ»´Î£¿ÎÊÌâ¾Í³öÔÚ staticÉÏ£¿

// °ïæ·ÖÎöһϠ#include #include #include #include #include

#include

typedef struct AA {

int b1:5; int b2:2; }AA;

void main()

{

AA aa;

char cc[100];

strcpy(cc,\memcpy(&aa,cc,sizeof(AA)); cout << aa.b1 < cout << aa.b2 < }

´ð°¸ÊÇ -16ºÍ£±

Ê×ÏÈsizeof(AA)µÄ´óСΪ4,b1ºÍb2·Ö±ðÕ¼5bitºÍ2bit. ¾­¹ýstrcpyºÍmemcpyºó,aaµÄ4¸ö×Ö½ÚËù´æ·ÅµÄÖµÊÇ: 0,1,2,3µÄASCÂ룬¼´00110000,00110001,00110010,00110011 ËùÒÔ£¬×îºóÒ»²½£ºÏÔʾµÄÊÇÕ⣴¸ö×Ö½ÚµÄǰ£µÎ»£¬ºÍÖ®ºóµÄ£²Î» ·Ö±ðΪ£º10000,ºÍ01

ÒòΪintÊÇÓÐÕý¸ºÖ®·Ö ËùÒÔ£º´ð°¸ÊÇ-16ºÍ£±

Çóº¯Êý·µ»ØÖµ£¬ÊäÈëx=9999; int func £¨ x £© {

int countx = 0; while ( x ) {

countx ++; x = x&(x-1); }

return countx; }

½á¹ûÄØ£¿

ÖªµÀÁËÕâÊÇͳ¼Æ9999µÄ¶þ½øÖÆÊýÖµÖÐÓжàÉÙ¸ö1µÄº¯Êý£¬ÇÒÓÐ 9999£½9¡Á1024£«512£«256£«15

9¡Á1024Öк¬ÓÐ1µÄ¸öÊýΪ2£» 512Öк¬ÓÐ1µÄ¸öÊýΪ1£» 256Öк¬ÓÐ1µÄ¸öÊýΪ1£» 15Öк¬ÓÐ1µÄ¸öÊýΪ4£»

¹Ê¹²ÓÐ1µÄ¸öÊýΪ8£¬½á¹ûΪ8¡£

1000 - 1 = 0111£¬ÕýºÃÊÇÔ­ÊýÈ¡·´¡£Õâ¾ÍÊÇÔ­Àí¡£ ÓÃÕâÖÖ·½·¨À´Çó1µÄ¸öÊýÊǺÜЧÂʺܸߵġ£ ²»±ØÈ¥Ò»¸öÒ»¸öµØÒÆÎ»¡£Ñ­»·´ÎÊý×îÉÙ¡£

int a,b,c Çëдº¯ÊýʵÏÖC=a+b ,²»¿ÉÒԸıäÊý¾ÝÀàÐÍ,È罫c¸ÄΪlong int,¹Ø¼üÊÇÈçºÎ´¦ÀíÒç³öÎÊÌâ

bool add (int a, int b,int *c) {

ÁªÏµ¿Í·þ£º779662525#qq.com(#Ìæ»»Îª@)