ÄÚÈÝ·¢²¼¸üÐÂʱ¼ä : 2025/12/20 20:27:34ÐÇÆÚÒ» ÏÂÃæÊÇÎÄÕµÄÈ«²¿ÄÚÈÝÇëÈÏÕæÔĶÁ¡£
»¶ÓÔĶÁ
//¸Ä±ä1¼¶Ö¸Õ루eg char *p = 0x1111 £©µÄÖµ£¬ÓÐ2ÖÖ·½Ê½
//¸Ä±ä2¼¶Ö¸ÕëµÄ£¨eg char **pp1 = 0x1111 £©µÄÖµ£¬ÓÐ2ÖÖ·½Ê½
//º¯Êýµ÷ÓÃʱ£¬Ðβδ«¸øÊµ²Î£¬ÓÃʵ²ÎÈ¡µØÖ·£¬´«¸øÐβΣ¬ÔÚ±»µ÷Óú¯ÊýÀïÃæÓÃ*p£¬À´¸Ä±äʵ²Î£¬°ÑÔËËã½á¹û´«³öÀ´¡£
//Ö¸Õë×÷Ϊº¯Êý²ÎÊýµÄ¾«Ëè¡£
ÌúÂÉ3£ºÀí½âÖ¸Õë±ØÐëºÍÄÚ´æËÄÇø¸ÅÄîÏà½áºÏ
1£© Ö÷µ÷º¯Êý ±»µ÷º¯Êý
a) Ö÷µ÷º¯Êý¿É°Ñ¶ÑÇø¡¢Õ»Çø¡¢È«¾ÖÊý¾ÝÄÚ´æµØÖ·´«¸ø±»µ÷Óú¯Êý b) ±»µ÷Óú¯ÊýÖ»ÄÜ·µ»Ø¶ÑÇø¡¢È«¾ÖÊý¾Ý 2£© ÄÚ´æ·ÖÅ䷽ʽ
a) Ö¸Õë×öº¯Êý²ÎÊý£¬ÊÇÓÐÊäÈëºÍÊä³öÌØÐԵġ£
ÌúÂÉ4£ºÓ¦ÓÃÖ¸Õë±ØÐëºÍº¯Êýµ÷ÓÃÏà½áºÏ£¨Ö¸Õë×öº¯Êý²ÎÊý£© ±àºÅ Ö¸Õ뺯Êý²ÎÊý Ö÷µ÷º¯Êý ±»µ÷º¯Êý ±¸×¢ ÄÚ´æ·ÖÅ䷽ʽ£¨¼¶±ð+¶ÑÕ»£© ʵ²Î ÐβΠ01 1¼¶Ö¸Õë ¶Ñ ·ÖÅä ʹÓà һ°ãÓ¦Óã¨×öÊäÈ룩 ½ûÓà ջ ·ÖÅä ʹÓà ³£Óà Int showbuf(char *p); int showArray(int *array, int iNum) 02 1¼¶Ö¸Õë Õ» ʹÓà ½á¹û´«³ö ³£Óà £¨×öÊä³ö£© int geLen(char *pFileName, int *pfileLen); 03 2¼¶Ö¸Õë ¶Ñ ·ÖÅä ʹÓà һ°ãÓ¦Óã¨×öÊäÈ룩 ½ûÓà ջ ·ÖÅä ʹÓà ³£Óà int main(int arc ,char *arg[]); Ö¸ÕëÊý×é int shouMatrix(int [3][4], int iLine);¶þά×Ö·û´®Êý×é 04 2¼¶Ö¸Õë ¶Ñ Ê¹Óà ·ÖÅä ³£Ó㬵«²»£¨×öÊä³ö£© ½¨ÒéÓã¬×ª»¯³É02 int getData(char **data, int *dataLen); Int getData_Free(void *data); Int getData_Free(void **data); //±ÜÃâÒ°Ö¸Õë 05 3¼¶Ö¸Õë ¶Ñ Ê¹Óà ·ÖÅä ²»³£Óà £¨×öÊä³ö£© int getFileAllLine(char ***content, int *pLine); int getFileAllLine_Free(char ***content, int *pLine); Ö¸Õë×öº¯Êý²ÎÊý£¬ÎÊÌâµÄʵÖʲ»ÊÇÖ¸Õ룬¶øÊÇ¿´ÄÚ´æ¿é£¬ÄÚ´æ¿éÊÇ1ά¡¢2ά¡£ 1£© Èç¹û»ù´¡Ààint±äÁ¿£¬²»ÐèÒªÓÃÖ¸Õ룻 2£© ÈôÄÚ´æ¿éÊÇ1ά¡¢2ά¡£
ÌúÂÉ5£ºÒ»¼¶Ö¸ÕëµäÐÍÓ÷¨£¨Ö¸Õë×öº¯Êý²ÎÊý£© Ò»¼¶Ö¸Õë×öÊäÈë
int showbuf(char *p)
int showArray(int *array, int iNum) Ò»¼¶Ö¸Õë×öÊä³ö »¶ÓÔĶÁ
»¶ÓÔĶÁ
int geLen(char *pFileName, int *pfileLen); Àí½â
Ö÷µ÷º¯Êý»¹ÊDZ»µ÷Óú¯Êý·ÖÅäÄÚ´æ ±»µ÷Óú¯ÊýÊÇÔÚheap/stackÉÏ·ÖÅäÄÚ´æ
ÌúÂÉ6£º¶þ¼¶Ö¸ÕëµäÐÍÓ÷¨£¨Ö¸Õë×öº¯Êý²ÎÊý£© ¶þ¼¶Ö¸Õë×öÊäÈë
int main(int arc ,char *arg[]); ×Ö·û´®Êý×é int shouMatrix(int [3][4], int iLine); ¶þ¼¶Ö¸Õë×öÊä³ö
int Demo64_GetTeacher(Teacher **ppTeacher); int Demo65_GetTeacher_Free(Teacher **ppTeacher); int getData(char **data, int *dataLen); Int getData_Free(void *data); Int getData_Free2(void **data); //±ÜÃâÒ°Ö¸Õë Àí½â
Ö÷µ÷º¯Êý»¹ÊDZ»µ÷Óú¯Êý·ÖÅäÄÚ´æ ±»µ÷Óú¯ÊýÊÇÔÚheap/stackÉÏ·ÖÅäÄÚ´æ ÌúÂÉ7£º Èý¼¶Ö¸ÕëÊä³öµäÐÍÓ÷¨ Èý¼¶Ö¸Õë×öÊä³ö int getFileAllLine(char ***content, int *pLine); int getFileAllLine_Free(char ***content, int *pLine); Àí½â
Ö÷µ÷º¯Êý»¹ÊDZ»µ÷Óú¯Êý·ÖÅäÄÚ´æ ±»µ÷Óú¯ÊýÊÇÔÚheap/stackÉÏ·ÖÅäÄÚ´æ ÌúÂÉ8£ºÔÓÏָÕëÓ÷¨¼¸µãÀ©³ä 1£©Ò°Ö¸Õë 2ÖÖfreeÐÎʽ int getData(char **data, int *dataLen); int getData_Free(void *data); int getData_Free2(void **data); 2£©2´Îµ÷Óà Ö÷µ÷º¯ÊýµÚÒ»´Îµ÷Óñ»µ÷Óú¯ÊýÇ󳤶ȣ»¸ù¾Ý³¤¶È£¬·ÖÅäÄڴ棬µ÷Óñ»µ÷Óú¯Êý¡£ 3£©·µ»ØÖµchar */int/char ** 4£©C³ÌÐòÊéд½á¹¹ ÉÌÒµÈí¼þ£¬Ã¿Ò»¸ö³ö´íµÄµØ·½¶¼ÒªÓÐÈÕÖ¾£¬ÈÕÖ¾¼¶±ð ÌúÂÉ9£ºÒ»°ãÓ¦ÓýûÓÃmalloc/new 2.3½Ó¿Ú·â×°Éè¼ÆË¼ÏëÒýµ¼
»ùÓÚsocketclient¿Í»§¶Ë½Ó¿ÚÉè¼ÆÓëʵÏÖ£¨·ÂտģÄ⣩ 2.4¸½Â¼
¡¾Íõ±£Ã÷ÀÏʦ¾µäÓA¿
1£©Ö¸ÕëÒ²ÊÇÒ»ÖÖÊý¾ÝÀàÐÍ£¬Ö¸ÕëµÄÊý¾ÝÀàÐÍÊÇÖ¸ËüËùÖ¸ÏòÄÚ´æ¿Õ¼äµÄÊý¾ÝÀàÐÍ
»¶ÓÔĶÁ
»¶ÓÔĶÁ 2£©¼ä½Ó¸³Öµ*pÊÇÖ¸Õë´æÔÚµÄ×î´óÒâÒå? 3£©Àí½âÖ¸Õë±ØÐëºÍÄÚ´æËÄÇø¸ÅÄîÏà½áºÏ? 4£©Ó¦ÓÃÖ¸Õë±ØÐëºÍº¯Êýµ÷ÓÃÏà½áºÏ£¨Ö¸Õë×öº¯Êý²ÎÊý£© Ö¸ÕëÊÇ×Óµ¯£¬º¯ÊýÊÇǹ¹Ü£»×Óµ¯Ö»ÓÐÑØ×Åǹ¹Ü·¢Éä²ÅÄÜÏÔʾËüµÄÍþÁ¦£»Ö¸ÕëµÄÑ§Ï°ÖØµã²»ÑÔ¶øÓ÷Á˰ɡ£½Ó¿ÚµÄ·â×°ºÍÉè¼Æ¡¢Ä£¿éµÄ»®·Ö¡¢½â¾öʵ¼ÊÓ¦ÓÃÎÊÌ⣻ËüÊÇÄãµÄ¹¤¾ß¡£ 5£©Ö¸ÕëÖ¸Ïò˾ͰÑ˵ĵØÖ·¸³¸øÖ¸Õë? 6£©Ö¸ÕëÖ¸Ïò˾ͰÑ˵ĵØÖ·¸³¸øÖ¸Õ룬ÓÃËü¶Ô¸¶Á´±íÇáËɼÓÓä¿ì 7£©Á´±íÈëÃŵĹؼüÊÇ·ÖÇå³þÁ´±í²Ù×÷ºÍ¸¨ÖúÖ¸Õë±äÁ¿Ö®¼äµÄÂß¼¹ØÏµ 8£©C/C++ÓïÑÔÓÐËü×Ô¼ºµÄÑ§Ï°ÌØµã£»ÈôjavaÓïÑÔµÄÑ§Ï°ÌØµãÊÇѧϰ¡¢Ó¦Óá¢ÉÏÏîÄ¿£»ÄÇôC/C++ÓïÑÔµÄÑ§Ï°ÌØµãÊÇ£ºÑ§Ï°¡¢Àí½â¡¢Ó¦Óá¢ÉÏÏîÄ¿¡£¶àÁËÒ»¸ö²½Öè°É¡£ 9£©Ñ§ºÃÖ¸Õë²Åѧ»áÁËCÓïÑԵİë±Ú½É½£¬ÁíÍâ°ë±Ú½É½ÔÚÄÄÀïÄØ£¿Äã²Â£¬¾«²ÊÆÊÎöÔÚ¿ÎÌᣠ10) Àí½âÖ¸Õë¹Ø¼üÔÚÄڴ棬ûÓÐÄÚ´æÄÄÀ´µÄÄÚ´æÊ×µØÖ·£¬Ã»ÓÐÄÚ´æÊ×µØÖ·£¬ÄÄÀ´µÄÖ¸Õë°¡¡£ 3×Ö·û´®ºÍÒ»¼¶Ö¸ÕëÄÚ´æÄ£ÐÍרÌâ 3.1×Ö·û´®»ù±¾²Ù×÷ ×Ö·ûÊý×é³õʼ»¯·½·¨ int main11() { //1 ´ó{}ºÅ·¨ ³õʼ»¯Áбí //Êý×é³õʼ»¯ÓÐ2ÖÖ·½·¨ ĬÈÏÔªËØ¸öÊý¡¢Ö¸¶¨ÔªËظöÊý char buf1[] = {'a', 'b', 'c', 'd', 'e'}; //ÈôûÓÐÖ¸¶¨³¤¶È£¬Ä¬Èϲ»·ÖÅäÁã //ÈôÖ¸¶¨³¤¶È£¬²»¹»±¨´í£»buf³¤¶È¶àÓÚ³õʼ»¯¸öÊý£¬»á×Ô¶¯²¹³äÁã char buf2[6] = {'a', 'b', 'c', 'd', 'e'}; char buf3[6] = {'a', 'b', 'c', 'd', 'e'}; //char buf4[5] = {'a', 'b', 'c', 'd', 'e'}; printf(\ system(\} ÔÚCÓïÑÔÖÐʹÓÃ×Ö·ûÊý×éÀ´Ä£Äâ×Ö·û´® CÓïÑÔÖеÄ×Ö·û´®ÊÇÒÔ¡¯\\0¡¯½áÊøµÄ×Ö·ûÊý×é CÓïÑÔÖеÄ×Ö·û´®¿ÉÒÔ·ÖÅäÓÚÕ»¿Õ¼ä£¬¶Ñ¿Õ¼ä»òÕßÖ»¶Á´æ´¢Çø //ÔÚCÓïÑÔÖÐʹÓÃ×Ö·ûÊý×éÀ´Ä£Äâ×Ö·û´® //CÓïÑÔÖеÄ×Ö·û´®ÊÇÒÔ¡¯\\0¡¯½áÊøµÄ×Ö·ûÊý×é »¶ÓÔĶÁ
»¶ÓÔĶÁ //CÓïÑÔÖеÄ×Ö·û´®¿ÉÒÔ·ÖÅäÓÚÕ»¿Õ¼ä£¬¶Ñ¿Õ¼ä»òÕßÖ»¶Á´æ´¢Çø int main12() { //1 ÓÃ×Ö·û´®À´³õʼ»¯Êý×é char buf2[] = {'a', 'b','c','d','\\0'}; //2 ×Ö·û´®³£Á¿³õʼ»¯Ò»¸ö×Ö·ûÊý×é char buf3[] = {\//½áÂÛ£º»á²¹³äÁã char buf4[] = \ char buf5[100] = \ printf(\ printf(\ printf(\} //strlen()Çó×Ö·û´®µÄ³¤¶È£¬×¢Òâ×Ö·û´®µÄ³¤¶È²»°üº¬\\0 //sizeof(ÀàÐÍ)×Ö·û´®ÀàÐÍ£¬µÄ´óС£¬°üÀ¨\\0£» 02SizeofÓëstrlenµÄÇø±ð Êý×é·¨ºÍÖ¸Õë·¨²Ù×÷×Ö·û´® 03 ×Ö·û´®²Ù×÷ Êý×é·¨£¬Ï±귨 ×Ö·ûÊý×éÃû£¬ÊǸöÖ¸Õ룬ÊǸö³£Á¿Ö¸Õ룻 ×Ö·ûÊý×éÃû£¬´ú±í×Ö·ûÊý×éÊ×ÔªËØµÄµØÖ·£¬²»´ú±íÕû¸öÊý×éµÄ¡£ Èç¹û´ú±íÕâ¸öÊý×飬ÄÇÐèÒªÊý×éÊý¾ÝÀàÐ͵Ä֪ʶ£¡ ÏÂÆÚ·Ö½â //×Ö·û´®²Ù×÷·½·¨ Êý×éϱ귨 Ö¸Õë·¨ int main13() { int i = 0; char buf5[100] = \ char *p = NULL; //ϱ귨 for (i=0; i<100; i++) { printf(\ } printf(\ //Ö¸Õë·¨1 for (i=0; i<100; i++) { printf(\ } //buf5ÊǸöÖ¸Õ룬ÊǸö³£Á¿Ö¸Õë //Ö¸Õë·¨2 printf(\ p = buf5; »¶ÓÔĶÁ
»¶ÓÔĶÁ for (i=0; i<100; i++) { printf(\ } //buf5ÊǸöÖ¸Õ룬ÊǸö³£Á¿Ö¸Õë } ÍÆÑݹý³ÌΪ£ºi±ä0+I, È¥[]ºÅ¼Ó*ºÅ //Æäʵ±¾ÖÊ£ºÖ¸Õë*p¼ä½ÓѰַ£¬²Ù×÷Äڴ棻 //[] ±àÒëÆ÷ΪÎÒÃÇ×öÁË*p²Ù×÷¶øÒÑ 3.2×Ö·û´®×öº¯Êý²ÎÊý ÉîÈëÀí½âÖ¸Õë¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£µÄ¹Ø¼üÊÇʲô£¿ ×¢Òâ Ö¸ÕëºÍÊý×éµÄ¾Þ´óÇø±ð char *p = ¡°abcdefg¡±; Char *buf = ¡°abcdefg¡±; һά×Ö·û´®ÄÚ´æÄ£ÐÍ£ºÁ½ÖÖ void copy_str01(char *from, char *to) { for (; *from!='\\0'; from++, to++) { *to = *from; } *to = '\\0'; } void copy_str02(char *from, char *to) { while(*from!='\\0') { *to++ = *from++; } *to = '\\0'; } void copy_str03(char *from, char *to) { while( (*to=*from) !='\\0') { to++; from++; } } void copy_str04(char *from, char *to) { »¶ÓÔĶÁ