3.Çë¼òµ¥ÃèÊöWindowsÄÚ´æ¹ÜÀíµÄ·½·¨¡£ ÄÚ´æ¹ÜÀíÊDzÙ×÷ϵͳÖеÄÖØÒª²¿·Ö£¬Á½Èý¾ä»°¿ÖÅÂËҲ˵²»Çå³þ°É¡«¡« ÎÒÏÈ˵¸ö´ó¸Å£¬Ï£ÍûÄܹ»Å×שÒýÓñ°É µ±³ÌÐòÔËÐÐʱÐèÒª´ÓÄÚ´æÖжÁ³öÕâ¶Î³ÌÐòµÄ´úÂë¡£´úÂëµÄλÖñØÐëÔÚÎïÀíÄÚ´æÖвÅÄܱ»ÔËÐУ¬ÓÉÓÚÏÖÔڵIJÙ×÷ϵͳÖÐÓзdz£¶àµÄ³ÌÐòÔËÐÐ×Å£¬ÄÚ´æÖв»Äܹ»ÍêÈ«·ÅÏ£¬ËùÒÔÒý³öÁËÐéÄâÄÚ´æµÄ¸ÅÄî¡£°ÑÄÄЩ²»³£ÓõijÌÐòƬ¶Ï¾Í·ÅÈëÐéÄâÄڴ棬µ±ÐèÒªÓõ½ËüµÄʱºòÔÚloadÈëÖ÷´æ£¨ÎïÀíÄڴ棩ÖС£Õâ¸ö¾ÍÊÇÄÚ´æ¹ÜÀíËùÒª×öµÄÊ¡£ÄÚ´æ¹ÜÀí»¹ÓÐÁíÍâÒ»¼þÊÂÐèÒª×ö£º¼ÆËã³ÌÐòƬ¶ÎÔÚÖ÷´æÖеÄÎïÀíλÖã¬ÒÔ±ãCPUµ÷¶È¡£ ÄÚ´æ¹ÜÀíÓпéʽ¹ÜÀí£¬Ò³Ê½¹ÜÀí£¬¶ÎʽºÍ¶Îҳʽ¹ÜÀí¡£ÏÖÔÚ³£ÓöÎҳʽ¹ÜÀí ¿éʽ¹ÜÀí£º°ÑÖ÷´æ·ÖΪһ´ó¿é¡¢Ò»´ó¿éµÄ£¬µ±ËùÐèµÄ³ÌÐòƬ¶Ï²»ÔÚÖ÷´æʱ¾Í·ÖÅäÒ»¿éÖ÷´æ¿Õ¼ä£¬°Ñ³Ì ÐòƬ¶ÏloadÈëÖ÷´æ£¬¾ÍËãËùÐèµÄ³ÌÐòƬ¶ÈÖ»Óм¸¸ö×Ö½ÚÒ²Ö»ÄÜ°ÑÕâÒ»¿é·ÖÅä¸øËü¡£ÕâÑù»áÔì³ÉºÜ´óµÄÀË·Ñ£¬Æ½¾ùÀË·ÑÁË50£¥µÄÄÚ´æ¿Õ¼ä£¬µ«Ê±Ò×ÓÚ¹ÜÀí¡£ ҳʽ¹ÜÀí£º°ÑÖ÷´æ·ÖΪһҳһҳµÄ£¬Ã¿Ò»Ò³µÄ¿Õ¼äÒª±ÈÒ»¿éÒ»¿éµÄ¿Õ¼äСºÜ¶à£¬ÏÔÈ»ÕâÖÖ·½·¨µÄ¿Õ¼äÀûÓÃÂÊÒª±È¿éʽ¹ÜÀí¸ßºÜ¶à¡£ ¶Îʽ¹ÜÀí£º°ÑÖ÷´æ·ÖΪһ¶ÎÒ»¶ÎµÄ£¬Ã¿Ò»¶ÎµÄ¿Õ¼äÓÖÒª±ÈÒ»Ò³Ò»Ò³µÄ¿Õ¼äСºÜ¶à£¬ÕâÖÖ·½·¨ÔÚ¿Õ¼äÀûÓÃÂÊÉÏÓÖ±Èҳʽ¹ÜÀí¸ßºÜ¶à£¬µ«ÊÇÒ²ÓÐÁíÍâÒ»¸öȱµã¡£Ò»¸ö³ÌÐòƬ¶Ï¿ÉÄܻᱻ·ÖΪ¼¸Ê®¶Î£¬ÕâÑùºÜ¶àʱ¼ä¾Í»á±»ÀË·ÑÔÚ¼ÆËãÿһ¶ÎµÄÎïÀíµØÖ·ÉÏ£¨¼ÆËã»ú×îºÄʱ¼äµÄ´ó¼Ò¶¼ÖªµÀÊÇI/O°É£©¡£ ¶Îҳʽ¹ÜÀí£º½áºÏÁ˶Îʽ¹ÜÀíºÍҳʽ¹ÜÀíµÄÓŵ㡣°ÑÖ÷´æ·ÖΪÈô¸ÉÒ³£¬Ã¿Ò»Ò³ÓÖ·ÖΪÈô¸É¶Î¡£ºÃ´¦¾ÍºÜÃ÷ÏÔ£¬²»ÓÃÎÒ¶à˵ÁË°É¡£ ¸÷ÖÖÄÚ´æ¹ÜÀí¶¼ÓÐËü×Ô¼ºµÄ·½·¨À´¼ÆËã³ö³ÌÐòƬ¶ÏÔÚÖ÷´æÖеÄÎïÀíµØÖ·£¬Æäʵ¶¼ºÜÏàËÆ¡£ ÕâÖ»ÊÇÒ»¸ö´ó¸Å¶øÒÑ£¬²»×ãÒÔ˵Ã÷ÄÚ´æ¹ÜÀíµÄƤë¡£ÎÞÂÛÄÄÒ»±¾²Ù×÷ϵͳÊéÉ϶¼ÓÐÏêϸµÄ½²½â -------------------------------------------------------------------------- 4. #include "stdafx.h" #define SQR(X) X*X int main(int argc, char* argv[]) { int a = 10; int k = 2; int m = 1; a /= SQR(k+m)/SQR(k+m); printf("%d\n",a); return 0; } ÕâµÀÌâÄ¿µÄ½á¹ûÊÇʲô°¡ define Ö»ÊǶ¨Òå¶øÒÑ£¬ÔÚ±àÔñʱֻÊǼòµ¥´ú»»X*X¶øÒÑ£¬²¢²»¾¹ýËãÊõ·¨ÔòµÄ a /= (k+m)*(k+m)/(k+m)*(k+m); =>a /= (k+m)*1*(k+m); =>a = a/9; =>a = 1; -------------------------------------------------------------------------- 5. const ·ûºÅ³£Á¿£» (1)const char *p (2)char const *p (3)char * const p ˵Ã÷ÉÏÃæÈýÖÖÃèÊöµÄÇø±ð£» Èç¹ûconstλÓÚÐǺŵÄ×ó²à£¬Ôòconst¾ÍÊÇÓÃÀ´ÐÞÊÎÖ¸ÕëËùÖ¸ÏòµÄ±äÁ¿£¬¼´Ö¸ÕëÖ¸ÏòΪ³£Á¿£» Èç¹ûconstλÓÚÐǺŵÄÓҲ࣬const¾ÍÊÇÐÞÊÎÖ¸Õë±¾Éí£¬¼´Ö¸Õë±¾ÉíÊdz£Á¿¡£ (1)const char *p Ò»¸öÖ¸ÏòcharÀàÐ͵Äconst¶ÔÏóÖ¸Õ룬p²»Êdz£Á¿,ÎÒÃÇ¿ÉÒÔÐÞ¸ÄpµÄÖµ£¬Ê¹ÆäÖ¸Ïò²»Í¬µÄchar£¬µ«ÊDz»ÄܸıäËüÖ¸Ïò·Çchar¶ÔÏó£¬È磺 const char *p; char c1='a'; char c2='b'; p=&c1;//ok p=&c2;//ok *p=c1;//error (2)char const *p (3)char * const p ÕâÁ½¸öºÃÏóÊÇÒ»ÑùµÄ£¬´Ëʱ*p¿ÉÒÔÐ޸ģ¬¶øp²»ÄÜÐ޸ġ£ (4)const char * const p ÕâÖÖÊǵØÖ·¼°Ö¸Ïò¶ÔÏ󶼲»ÄÜÐ޸ġ£ -------------------------------------------------------------------------- 6.ÏÂÃæÊÇCÓïÑÔÖÐÁ½ÖÖifÓï¾äÅжϷ½Ê½¡£ÇëÎÊÄÄÖÖд·¨¸üºÃ£¿ÎªÊ²Ã´£¿ int n; if (n == 10) // µÚÒ»ÖÖÅжϷ½Ê½ if (10 == n) // µÚ¶þÖÖÅжϷ½Ê½ Èç¹ûÉÙÁ˸ö=ºÅ,±àÒëʱ¾Í»á±¨´í,¼õÉÙÁ˳ö´íµÄ¿ÉÄÜÐÐ,¿ÉÒÔ¼ì²â³öÊÇ·ñÉÙÁË= -------------------------------------------------------------------------- 7.ÏÂÃæµÄ´úÂëÓÐʲôÎÊÌ⣿ void DoSomeThing(...) { char* p; ... p = malloc(1024); // ·ÖÅä1KµÄ¿Õ¼ä if (NULL == p) return; ... p = realloc(p, 2048); // ¿Õ¼ä²»¹»£¬ÖØзÖÅäµ½2K if (NULL == p) return; ... } A: p = malloc(1024); Ó¦¸Ãд³É£º p = (char *) malloc(1024); ûÓÐÊÍ·ÅpµÄ¿Õ¼ä£¬Ôì³ÉÄÚ´æй©¡£ -------------------------------------------------------------------------- 8.ÏÂÃæµÄ´úÂëÓÐʲôÎÊÌ⣿²¢Çë¸ø³öÕýÈ·µÄд·¨¡£ void DoSomeThing(char* p) { char str[16]; int n; assert(NULL != p); sscanf(p, "%s%d", str, n); if (0 == strcmp(str, "something")) { ... } } A: sscanf(p, "%s%d", str, n); Õâ¾ä¸Ãд³É£º sscanf(p, "%s%d", str, &n); -------------------------------------------------------------------------- 9.ÏÂÃæ´úÂëÓÐʲô´íÎó Void test1() { char string[10]; char *str1="0123456789"; strcpy(string, str1); } Êý×éÔ½½ç -------------------------------------------------------------------------- 10.ÏÂÃæ´úÂëÓÐʲôÎÊÌâ Void test2() { char string[10], str1[10]; for(i=0; i<10;i++) { str1[i] ='a'; } strcpy(string, str1); } Êý×éÔ½½ç -------------------------------------------------------------------------- 11.ÏÂÃæ´úÂëÓÐʲôÎÊÌâ Void test3(char* str1) { char string[10]; if(strlen(str1)<=10) { strcpy(string, str1); } } ==Êý×éÔ½½ç ==strcpy¿½±´µÄ½áÊø±êÖ¾ÊDzéÕÒ×Ö·û´®ÖеÄ\0 Òò´ËÈç¹û×Ö·û´®ÖÐûÓÐÓöµ½\0µÄ»° »áÒ»Ö±¸´ÖÆ£¬Ö±µ½Óöµ½\0,ÉÏÃæµÄ123¶¼Òò´Ë²úÉúÔ½½çµÄÇé¿ö
½¨ÒéʹÓà strncpy ºÍ m |