ÕâÆªÎÄÕ½éÉÜÔÚLINUXϽøÐÐCÓïÑÔ±à³ÌËùÐèÒªµÄ»ù´¡ÖªÊ¶.ÔÚÕâÆªÎÄÕµ±ÖÐ,ÎÒÃǽ«»áѧµ½ÒÔÏÂÄÚÈÝ:
Ô´³ÌÐò±àÒë
MakefileµÄ±àд
³ÌÐò¿âµÄÁ´½Ó
³ÌÐòµÄµ÷ÊÔ
Í·ÎļþºÍϵͳÇóÖú
--------------------------------------------------------------------------------
1.Ô´³ÌÐòµÄ±àÒë
ÔÚLinuxÏÂÃæ,Èç¹ûÒª±àÒëÒ»¸öCÓïÑÔÔ´³ÌÐò,ÎÒÃÇҪʹÓÃGNUµÄgcc±àÒëÆ÷. ÏÂÃæÎÒÃÇÒÔÒ»¸öʵÀýÀ´ËµÃ÷ÈçºÎʹÓÃgcc±àÒëÆ÷.
¼ÙÉèÎÒÃÇÓÐÏÂÃæÒ»¸ö·Ç³£¼òµ¥µÄÔ´³ÌÐò(hello.c):
int main(int argc,char **argv)
{
printf("Hello Linux\n");
}
Òª±àÒëÕâ¸ö³ÌÐò,ÎÒÃÇÖ»ÒªÔÚÃüÁîÐÐÏÂÖ´ÐÐ:
gcc -o hello hello.c
gcc ±àÒëÆ÷¾Í»áΪÎÒÃÇÉú³ÉÒ»¸öhelloµÄ¿ÉÖ´ÐÐÎļþ.Ö´ÐÐ./hello¾Í¿ÉÒÔ¿´µ½³ÌÐòµÄÊä³ö½á¹ûÁË.ÃüÁîÐÐÖÐ
gcc±íʾÎÒÃÇÊÇÓÃgccÀ´±àÒëÎÒÃǵÄÔ´³ÌÐò,-o Ñ¡Ïî±íʾÎÒÃÇÒªÇó±àÒëÆ÷¸øÎÒÃÇÊä³öµÄ¿ÉÖ´ÐÐÎļþÃûΪhello
¶øhello.cÊÇÎÒÃǵÄÔ´³ÌÐòÎļþ. gcc±àÒëÆ÷ÓÐÐí¶àÑ¡Ïî,Ò»°ãÀ´ËµÎÒÃÇÖ»ÒªÖªµÀÆäÖеö¾Í¹»ÁË. -oÑ¡ÏîÎÒÃÇÒѾ֪µÀÁË,±íʾÎÒÃÇÒªÇóÊä³öµÄ¿ÉÖ´ÐÐÎļþÃû.
-cÑ¡Ïî±íʾÎÒÃÇÖ»ÒªÇó±àÒëÆ÷Êä³öÄ¿±ê´úÂë,¶ø²»±ØÒªÊä³ö¿ÉÖ´ÐÐÎļþ. -gÑ¡Ïî±íʾÎÒÃÇÒªÇó±àÒëÆ÷ÔÚ±àÒëµÄʱºòÌṩÎÒà ......
ÕâÆªÎÄÕ½éÉÜÔÚLINUXϽøÐÐCÓïÑÔ±à³ÌËùÐèÒªµÄ»ù´¡ÖªÊ¶.ÔÚÕâÆªÎÄÕµ±ÖÐ,ÎÒÃǽ«»áѧµ½ÒÔÏÂÄÚÈÝ:
Ô´³ÌÐò±àÒë
MakefileµÄ±àд
³ÌÐò¿âµÄÁ´½Ó
³ÌÐòµÄµ÷ÊÔ
Í·ÎļþºÍϵͳÇóÖú
--------------------------------------------------------------------------------
1.Ô´³ÌÐòµÄ±àÒë
ÔÚLinuxÏÂÃæ,Èç¹ûÒª±àÒëÒ»¸öCÓïÑÔÔ´³ÌÐò,ÎÒÃÇҪʹÓÃGNUµÄgcc±àÒëÆ÷. ÏÂÃæÎÒÃÇÒÔÒ»¸öʵÀýÀ´ËµÃ÷ÈçºÎʹÓÃgcc±àÒëÆ÷.
¼ÙÉèÎÒÃÇÓÐÏÂÃæÒ»¸ö·Ç³£¼òµ¥µÄÔ´³ÌÐò(hello.c):
int main(int argc,char **argv)
{
printf("Hello Linux\n");
}
Òª±àÒëÕâ¸ö³ÌÐò,ÎÒÃÇÖ»ÒªÔÚÃüÁîÐÐÏÂÖ´ÐÐ:
gcc -o hello hello.c
gcc ±àÒëÆ÷¾Í»áΪÎÒÃÇÉú³ÉÒ»¸öhelloµÄ¿ÉÖ´ÐÐÎļþ.Ö´ÐÐ./hello¾Í¿ÉÒÔ¿´µ½³ÌÐòµÄÊä³ö½á¹ûÁË.ÃüÁîÐÐÖÐ
gcc±íʾÎÒÃÇÊÇÓÃgccÀ´±àÒëÎÒÃǵÄÔ´³ÌÐò,-o Ñ¡Ïî±íʾÎÒÃÇÒªÇó±àÒëÆ÷¸øÎÒÃÇÊä³öµÄ¿ÉÖ´ÐÐÎļþÃûΪhello
¶øhello.cÊÇÎÒÃǵÄÔ´³ÌÐòÎļþ. gcc±àÒëÆ÷ÓÐÐí¶àÑ¡Ïî,Ò»°ãÀ´ËµÎÒÃÇÖ»ÒªÖªµÀÆäÖеö¾Í¹»ÁË. -oÑ¡ÏîÎÒÃÇÒѾ֪µÀÁË,±íʾÎÒÃÇÒªÇóÊä³öµÄ¿ÉÖ´ÐÐÎļþÃû.
-cÑ¡Ïî±íʾÎÒÃÇÖ»ÒªÇó±àÒëÆ÷Êä³öÄ¿±ê´úÂë,¶ø²»±ØÒªÊä³ö¿ÉÖ´ÐÐÎļþ. -gÑ¡Ïî±íʾÎÒÃÇÒªÇó±àÒëÆ÷ÔÚ±àÒëµÄʱºòÌṩÎÒà ......
---- ÔÚÊý¾Ý¿âµÄÓ¦Óÿª·¢ÖУ¬³£³£»áÓöµ½ÐÔÄܺʹú¼ÛµÄÖ®¼äì¶Ü¡£ÒÔ×÷ÕßÔÚ¿ª·¢¹ÉÊÐÐÐ
Çé²éѯºÍ½»Ò×ϵͳÖÐÓöµ½µÄÎÊÌâΪÀý£¬ÒªÔÚʵʱ¼Ç¼1000¶àÖ»¹ÉƱÿ·ÖÖÓ¸üÐÂÒ»´ÎµÄÐÐ
ÇéÊý¾ÝµÄͬʱ£¬ÏìÓ¦´óÁ¿²¢·¢Óû§µÄÊý¾Ý²éѯÇëÇ󡣿¼Âǵ½ÐԼ۱ȺÍÒ×ά»¤ÐÔ£¬ÏµÍ³ÓÖ
ÒªÇóÔÚ»ùÓÚPC·þÎñÆ÷£¬Windows NTƽ̨µÄÈíÓ²¼þ»·¾³ÏÂʵÏÖ¡£¿ªÊ¼£¬ÎÒÃDzÉÓÃÁËMS SQL
Server 6.5 ×÷ΪÊý¾Ý¿âϵͳ£¬ÓÃVisual C++ 6.0¿ª·¢ÁË·ÃÎÊÊý¾Ý¿âµÄǰ¶Ë£¬Ó¦ÓÃODBC
Êý¾Ý½Ó¿Ú£¬ÔÚ½øÐÐÁË´óÁ¿µÄÊý¾Ý¿âÅäÖúͳÌÐòÓÅ»¯ºó£¬·¢ÏÖÈÔ²»ÄÜÂú×ãÐÔÄÜÒªÇ󡣺ó²É
ÓÃSQL ServerµÄDB-Library½Ó¿Ú£¬ÈƹýÁËODBC½âÊͲ㣬¿ÉÒÔÿÃë¸üÐÂÐÐÇéÊý¾Ý30´Î£¬Í¬
ʱ֧³Ö20£30¸ö×óÓҵIJ¢·¢Óû§½øÐÐÐÐÇé²éѯ£¬»ù±¾Âú×ãÒªÇ󣨵¥Ì¨PC·þÎñÆ÷£¬µ¥PII3
50 CPU£¬ÄÚ´æ128M£¬SCSIÓ²ÅÌ£©¡£ÓÐûÓпÉÄܽøÒ»²½Ìá¸ßϵͳµÄÐÔÄܺ͸ºÔØÄÜÁ¦ÄØ£¿¾
¹ý·ÖÎö£¬Êý¾Ý¿â·þÎñÆ÷ÊÇϵͳµÄÆ¿¾±¡£µ±È»£¬¿ÉÒÔ²ÉÓÃUNIX·þÎñÆ÷£«´óÐÍÊý¾Ý¿âµÄϵͳ
ƽ̨£¬µ«Æä¿ª·¢¡¢ÔËÐС¢Î¬»¤µÄ·ÑÓñÈ΢»ú£«Windows NTƽ̨µÄ·ÑÓø߳öÊý±¶¡£ÎÒÃÇÔÚ
ÆäËüһЩϵͳµÄ¿ª·¢ÖУ¬Ò²¾³£Óöµ½ÕâÑùµÄì¶Ü¡£ÈçºÎÔÚ΢»úƽ̨ÉϽ¨Á¢´óÈÝÁ¿¡¢¸ßЧ
ÂÊ¡¢Ò×ά»¤¡¢¸ßÐԼ۱ȵÄÊý¾Ý¿âÏµÍ³ÄØ£¿
---- ¿¼ ......
---- ÔÚÊý¾Ý¿âµÄÓ¦Óÿª·¢ÖУ¬³£³£»áÓöµ½ÐÔÄܺʹú¼ÛµÄÖ®¼äì¶Ü¡£ÒÔ×÷ÕßÔÚ¿ª·¢¹ÉÊÐÐÐ
Çé²éѯºÍ½»Ò×ϵͳÖÐÓöµ½µÄÎÊÌâΪÀý£¬ÒªÔÚʵʱ¼Ç¼1000¶àÖ»¹ÉƱÿ·ÖÖÓ¸üÐÂÒ»´ÎµÄÐÐ
ÇéÊý¾ÝµÄͬʱ£¬ÏìÓ¦´óÁ¿²¢·¢Óû§µÄÊý¾Ý²éѯÇëÇ󡣿¼Âǵ½ÐԼ۱ȺÍÒ×ά»¤ÐÔ£¬ÏµÍ³ÓÖ
ÒªÇóÔÚ»ùÓÚPC·þÎñÆ÷£¬Windows NTƽ̨µÄÈíÓ²¼þ»·¾³ÏÂʵÏÖ¡£¿ªÊ¼£¬ÎÒÃDzÉÓÃÁËMS SQL
Server 6.5 ×÷ΪÊý¾Ý¿âϵͳ£¬ÓÃVisual C++ 6.0¿ª·¢ÁË·ÃÎÊÊý¾Ý¿âµÄǰ¶Ë£¬Ó¦ÓÃODBC
Êý¾Ý½Ó¿Ú£¬ÔÚ½øÐÐÁË´óÁ¿µÄÊý¾Ý¿âÅäÖúͳÌÐòÓÅ»¯ºó£¬·¢ÏÖÈÔ²»ÄÜÂú×ãÐÔÄÜÒªÇ󡣺ó²É
ÓÃSQL ServerµÄDB-Library½Ó¿Ú£¬ÈƹýÁËODBC½âÊͲ㣬¿ÉÒÔÿÃë¸üÐÂÐÐÇéÊý¾Ý30´Î£¬Í¬
ʱ֧³Ö20£30¸ö×óÓҵIJ¢·¢Óû§½øÐÐÐÐÇé²éѯ£¬»ù±¾Âú×ãÒªÇ󣨵¥Ì¨PC·þÎñÆ÷£¬µ¥PII3
50 CPU£¬ÄÚ´æ128M£¬SCSIÓ²ÅÌ£©¡£ÓÐûÓпÉÄܽøÒ»²½Ìá¸ßϵͳµÄÐÔÄܺ͸ºÔØÄÜÁ¦ÄØ£¿¾
¹ý·ÖÎö£¬Êý¾Ý¿â·þÎñÆ÷ÊÇϵͳµÄÆ¿¾±¡£µ±È»£¬¿ÉÒÔ²ÉÓÃUNIX·þÎñÆ÷£«´óÐÍÊý¾Ý¿âµÄϵͳ
ƽ̨£¬µ«Æä¿ª·¢¡¢ÔËÐС¢Î¬»¤µÄ·ÑÓñÈ΢»ú£«Windows NTƽ̨µÄ·ÑÓø߳öÊý±¶¡£ÎÒÃÇÔÚ
ÆäËüһЩϵͳµÄ¿ª·¢ÖУ¬Ò²¾³£Óöµ½ÕâÑùµÄì¶Ü¡£ÈçºÎÔÚ΢»úƽ̨ÉϽ¨Á¢´óÈÝÁ¿¡¢¸ßЧ
ÂÊ¡¢Ò×ά»¤¡¢¸ßÐԼ۱ȵÄÊý¾Ý¿âÏµÍ³ÄØ£¿
---- ¿¼ ......
---- ÔÚÊý¾Ý¿âµÄÓ¦Óÿª·¢ÖУ¬³£³£»áÓöµ½ÐÔÄܺʹú¼ÛµÄÖ®¼äì¶Ü¡£ÒÔ×÷ÕßÔÚ¿ª·¢¹ÉÊÐÐÐ
Çé²éѯºÍ½»Ò×ϵͳÖÐÓöµ½µÄÎÊÌâΪÀý£¬ÒªÔÚʵʱ¼Ç¼1000¶àÖ»¹ÉƱÿ·ÖÖÓ¸üÐÂÒ»´ÎµÄÐÐ
ÇéÊý¾ÝµÄͬʱ£¬ÏìÓ¦´óÁ¿²¢·¢Óû§µÄÊý¾Ý²éѯÇëÇ󡣿¼Âǵ½ÐԼ۱ȺÍÒ×ά»¤ÐÔ£¬ÏµÍ³ÓÖ
ÒªÇóÔÚ»ùÓÚPC·þÎñÆ÷£¬Windows NTƽ̨µÄÈíÓ²¼þ»·¾³ÏÂʵÏÖ¡£¿ªÊ¼£¬ÎÒÃDzÉÓÃÁËMS SQL
Server 6.5 ×÷ΪÊý¾Ý¿âϵͳ£¬ÓÃVisual C++ 6.0¿ª·¢ÁË·ÃÎÊÊý¾Ý¿âµÄǰ¶Ë£¬Ó¦ÓÃODBC
Êý¾Ý½Ó¿Ú£¬ÔÚ½øÐÐÁË´óÁ¿µÄÊý¾Ý¿âÅäÖúͳÌÐòÓÅ»¯ºó£¬·¢ÏÖÈÔ²»ÄÜÂú×ãÐÔÄÜÒªÇ󡣺ó²É
ÓÃSQL ServerµÄDB-Library½Ó¿Ú£¬ÈƹýÁËODBC½âÊͲ㣬¿ÉÒÔÿÃë¸üÐÂÐÐÇéÊý¾Ý30´Î£¬Í¬
ʱ֧³Ö20£30¸ö×óÓҵIJ¢·¢Óû§½øÐÐÐÐÇé²éѯ£¬»ù±¾Âú×ãÒªÇ󣨵¥Ì¨PC·þÎñÆ÷£¬µ¥PII3
50 CPU£¬ÄÚ´æ128M£¬SCSIÓ²ÅÌ£©¡£ÓÐûÓпÉÄܽøÒ»²½Ìá¸ßϵͳµÄÐÔÄܺ͸ºÔØÄÜÁ¦ÄØ£¿¾
¹ý·ÖÎö£¬Êý¾Ý¿â·þÎñÆ÷ÊÇϵͳµÄÆ¿¾±¡£µ±È»£¬¿ÉÒÔ²ÉÓÃUNIX·þÎñÆ÷£«´óÐÍÊý¾Ý¿âµÄϵͳ
ƽ̨£¬µ«Æä¿ª·¢¡¢ÔËÐС¢Î¬»¤µÄ·ÑÓñÈ΢»ú£«Windows NTƽ̨µÄ·ÑÓø߳öÊý±¶¡£ÎÒÃÇÔÚ
ÆäËüһЩϵͳµÄ¿ª·¢ÖУ¬Ò²¾³£Óöµ½ÕâÑùµÄì¶Ü¡£ÈçºÎÔÚ΢»úƽ̨ÉϽ¨Á¢´óÈÝÁ¿¡¢¸ßЧ
ÂÊ¡¢Ò×ά»¤¡¢¸ßÐԼ۱ȵÄÊý¾Ý¿âÏµÍ³ÄØ£¿
---- ¿¼ ......
ÊÔÌâ1£º
Code
Void test1()
{
char string[10];
char* str1="0123456789";
strcpy(string, str1);
}
ÊÔÌâ2£º
Code
Void test2()
{
char string[10], str1[10];
for(I=0; I<10;I++)
{
str1[i] ='a';
}
strcpy(string, str1);
}
ÊÔÌâ3£º
Code
Void test3(char* str1)
{
char string[10];
if(strlen(str1) <= 10)
{
strcpy(string, str1);
}
}
½â´ð£º
test1: ×Ö·û´®str1ÐèÒª11¸ö×Ö½Ú²ÅÄÜ´æ·ÅÏÂ(°üÀ¨Ä©Î²µÄ'\0')£¬¶østringÖ»ÓÐ10¸ö×ֽڵĿռ䣬strcpy»áµ¼ÖÂÊý×éÔ½½ç
test2: Èç¹ûÃæÊÔÕßÖ¸³ö×Ö·ûÊý×éstr1²»ÄÜÔÚÊý×éÄÚ½áÊø¿ÉÒÔ¸ø3·Ö£»Èç¹ûÃæÊÔÕß ......
ÊÔÌâ1£º
Code
Void test1()
{
char string[10];
char* str1="0123456789";
strcpy(string, str1);
}
ÊÔÌâ2£º
Code
Void test2()
{
char string[10], str1[10];
for(I=0; I<10;I++)
{
str1[i] ='a';
}
strcpy(string, str1);
}
ÊÔÌâ3£º
Code
Void test3(char* str1)
{
char string[10];
if(strlen(str1) <= 10)
{
strcpy(string, str1);
}
}
½â´ð£º
test1: ×Ö·û´®str1ÐèÒª11¸ö×Ö½Ú²ÅÄÜ´æ·ÅÏÂ(°üÀ¨Ä©Î²µÄ'\0')£¬¶østringÖ»ÓÐ10¸ö×ֽڵĿռ䣬strcpy»áµ¼ÖÂÊý×éÔ½½ç
test2: Èç¹ûÃæÊÔÕßÖ¸³ö×Ö·ûÊý×éstr1²»ÄÜÔÚÊý×éÄÚ½áÊø¿ÉÒÔ¸ø3·Ö£»Èç¹ûÃæÊÔÕß ......
ÖÚ¶àC++Êé¼®¶¼ÖÒ¸æÎÒÃÇCÓïÑÔºêÊÇÍò¶ñÖ®Ê×£¬µ«ÊÂÇé×ܲ»ÈçÎÒÃÇÏëÏóµÄÄÇô»µ£¬¾ÍÈçͬgotoÒ»Ñù¡£ºêÓÐ
Ò»¸öºÜ´óµÄ×÷Ó㬾ÍÊÇ×Ô¶¯ÎªÎÒÃDzúÉú´úÂë¡£Èç¹û˵ģ°å¿ÉÒÔΪÎÒÃDzúÉú¸÷ÖÖÐͱðµÄ´úÂë(ÐͱðÌæ»»)£¬
ÄÇôºêÆäʵ¿ÉÒÔΪÎÒÃÇÔÚ·ûºÅÉϲúÉúеĴúÂë(¼´·ûºÅÌæ»»¡¢Ôö¼Ó)¡£
¹ØÓÚºêµÄһЩÓï·¨ÎÊÌ⣬¿ÉÒÔÔÚgoogleÉÏÕÒµ½¡£ÏàÐÅÎÒ£¬Äã¶ÔÓÚºêµÄÁË½â¾ø¶ÔûÄãÏëÏóµÄÄÇô¶à¡£Èç¹ûÄã
»¹²»ÖªµÀ#ºÍ##£¬Ò²²»ÖªµÀprescan£¬ÄÇôÄã¿Ï¶¨¶ÔºêµÄÁ˽ⲻ¹»¡£
ÎÒÉÔ΢½²½âϺêµÄһЩÓï·¨ÎÊÌâ(˵Óï·¨ÎÊÌâËÆºõ²»Í×£¬macroÖ»ÓëpreprocessorÓйأ¬¸úÓïÒå·ÖÎöÓÖÎÞ¹Ø)£º
1. ºê¿ÉÒÔÏñº¯ÊýÒ»Ñù±»¶¨Ò壬ÀýÈ磺
#define min(x,y) (x µ«ÊÇÔÚʵ¼ÊʹÓÃʱ£¬Ö»Óе±Ð´ÉÏmin()£¬±ØÐë¼ÓÀ¨ºÅ£¬min²Å»á±»×÷ΪºêÕ¹¿ª£¬·ñÔò²»×öÈκδ¦Àí¡£
2. Èç¹ûºêÐèÒª²ÎÊý£¬Äã¿ÉÒÔ²»´«£¬±àÒëÆ÷»á¸øÄ㾯¸æ(ºê²ÎÊý²»¹»)£¬µ«ÊÇÕâ»áµ¼Ö´íÎó¡£ÈçC++Êé¼®ÖÐËùÃè
ÊöµÄ£¬±àÒëÆ÷(Ô¤´¦ÀíÆ÷)¶ÔºêµÄÓï·¨¼ì²é²»¹»£¬ËùÒÔ¸ü¶àµÄ¼ì²éÐÔ¹¤×÷µÃÄã×Ô¼ºÀ´×ö¡£
3. ºÜ¶à³ÌÐòÔ±²»ÖªµÀµÄ#ºÍ##
#·ûºÅ°ÑÒ»¸ö·ûºÅÖ±½Óת»»Îª×Ö·û´®£¬ÀýÈ磺
#define STRING(x) #x
const char *str = STRING( test_string ); strµÄÄÚÈݾÍÊÇ"test_string"£¬Ò²¾ÍÊÇ˵#»á°ÑÆäºóµÄ·ûºÅ
Ö ......
ÖÚ¶àC++Êé¼®¶¼ÖÒ¸æÎÒÃÇCÓïÑÔºêÊÇÍò¶ñÖ®Ê×£¬µ«ÊÂÇé×ܲ»ÈçÎÒÃÇÏëÏóµÄÄÇô»µ£¬¾ÍÈçͬgotoÒ»Ñù¡£ºêÓÐ
Ò»¸öºÜ´óµÄ×÷Ó㬾ÍÊÇ×Ô¶¯ÎªÎÒÃDzúÉú´úÂë¡£Èç¹û˵ģ°å¿ÉÒÔΪÎÒÃDzúÉú¸÷ÖÖÐͱðµÄ´úÂë(ÐͱðÌæ»»)£¬
ÄÇôºêÆäʵ¿ÉÒÔΪÎÒÃÇÔÚ·ûºÅÉϲúÉúеĴúÂë(¼´·ûºÅÌæ»»¡¢Ôö¼Ó)¡£
¹ØÓÚºêµÄһЩÓï·¨ÎÊÌ⣬¿ÉÒÔÔÚgoogleÉÏÕÒµ½¡£ÏàÐÅÎÒ£¬Äã¶ÔÓÚºêµÄÁË½â¾ø¶ÔûÄãÏëÏóµÄÄÇô¶à¡£Èç¹ûÄã
»¹²»ÖªµÀ#ºÍ##£¬Ò²²»ÖªµÀprescan£¬ÄÇôÄã¿Ï¶¨¶ÔºêµÄÁ˽ⲻ¹»¡£
ÎÒÉÔ΢½²½âϺêµÄһЩÓï·¨ÎÊÌâ(˵Óï·¨ÎÊÌâËÆºõ²»Í×£¬macroÖ»ÓëpreprocessorÓйأ¬¸úÓïÒå·ÖÎöÓÖÎÞ¹Ø)£º
1. ºê¿ÉÒÔÏñº¯ÊýÒ»Ñù±»¶¨Ò壬ÀýÈ磺
#define min(x,y) (x µ«ÊÇÔÚʵ¼ÊʹÓÃʱ£¬Ö»Óе±Ð´ÉÏmin()£¬±ØÐë¼ÓÀ¨ºÅ£¬min²Å»á±»×÷ΪºêÕ¹¿ª£¬·ñÔò²»×öÈκδ¦Àí¡£
2. Èç¹ûºêÐèÒª²ÎÊý£¬Äã¿ÉÒÔ²»´«£¬±àÒëÆ÷»á¸øÄ㾯¸æ(ºê²ÎÊý²»¹»)£¬µ«ÊÇÕâ»áµ¼Ö´íÎó¡£ÈçC++Êé¼®ÖÐËùÃè
ÊöµÄ£¬±àÒëÆ÷(Ô¤´¦ÀíÆ÷)¶ÔºêµÄÓï·¨¼ì²é²»¹»£¬ËùÒÔ¸ü¶àµÄ¼ì²éÐÔ¹¤×÷µÃÄã×Ô¼ºÀ´×ö¡£
3. ºÜ¶à³ÌÐòÔ±²»ÖªµÀµÄ#ºÍ##
#·ûºÅ°ÑÒ»¸ö·ûºÅÖ±½Óת»»Îª×Ö·û´®£¬ÀýÈ磺
#define STRING(x) #x
const char *str = STRING( test_string ); strµÄÄÚÈݾÍÊÇ"test_string"£¬Ò²¾ÍÊÇ˵#»á°ÑÆäºóµÄ·ûºÅ
Ö ......
#include <stdio.h>
#include <unistd.h>
#define FOO "foo"
int main(void)
{
if(!access(FOO, F_OK))
{
if(!unlink(FOO))
{
}
else
{
printf("remove %s failed\n", FOO);
}
}
else
{
printf("%s not existed\n", FOO);
}
return 0;
} ......
#include <stdio.h>
#include <unistd.h>
#define FOO "foo"
int main(void)
{
if(!access(FOO, F_OK))
{
if(!unlink(FOO))
{
}
else
{
printf("remove %s failed\n", FOO);
}
}
else
{
printf("%s not existed\n", FOO);
}
return 0;
} ......
ÒýÑÔ
¡¡¡¡Ö¸ÕëÊÇC/C++ÓïÑÔµÄÌØÉ«£¬¶øÊý×éÃûÓëÖ¸ÕëÓÐÌ«¶àµÄÏàËÆ£¬ÉõÖÁºÜ¶àʱºò£¬Êý×éÃû¿ÉÒÔ×÷ΪָÕëʹÓá£ÓÚÊǺõ£¬ºÜ¶à³ÌÐòÉè¼ÆÕ߾ͱ»¸ãºýÍ¿ÁË¡£¶øÐí¶àµÄ´óѧÀÏʦ£¬ËûÃÇÔÚCÓïÑԵĽÌѧ¹ý³ÌÖÐÒ²´íÎóµÃ¸øÑ§Éú½²½â£º"Êý×éÃû¾ÍÊÇÖ¸Õë"¡£ºÜÐÒÔË£¬ÎҵĴóѧÀÏʦ¾ÍÊÇÆäÖÐÖ®Ò»¡£Ê±ÖÁ½ñÈÕ£¬ÎÒÈÕ¸´Ò»ÈյؽøÐÐ×ÅC/C++ÏîÄ¿µÄ¿ª·¢£¬¶øÉí±ß»¹Ò»Ö±³äÂúÕâÑùµÄ³ÌÐòÔ±£¬ËûÃDZ£Áô×Å"Êý×éÃû¾ÍÊÇÖ¸Õë"µÄÎó½â¡£
¡¡¡¡Ïë±ØÕâÖÖÎó½âµÄ¸ùÔ´ÔÚÓÚ¹úÄÚijָÃûµÄC³ÌÐòÉè¼Æ½Ì³Ì¡£Èç¹ûÕâÆªÎÄÕÂÄܹ»¾ÀÕýÐí¶àÖйú³ÌÐòÔ±¶ÔÊý×éÃûºÍÖ¸ÕëµÄÎó½â£¬±ÊÕ߾Ͳ»ÉõÐÀοÁË¡£½è´ËÎÄ£¬±ÊÕßÕ¾ÔÚÎÞÊý¶Ô֪ʶÈç¼¢ËÆ¿ÊµÄÖйú³ÌÐòÔ±Ö®ÖУ¬ÉîÉî¼ÄÏ£ÍûÓÚ¹úÄڵļÆËã»úͼÊé±àдÕßÃÇ£¬ÄÜÒÔ"ÉîÈë̽Ë÷"µÄ˼ά·½Ê½ºÍ¾«ÒæÇ󾫵ÄÈÏÕæÌ¬¶ÈÀ´¶Ô´ýͼÊé±àд¹¤×÷£¬µ«Ô¸ÊÐÃæÉ϶àһЩÈÚÈë×÷Õß˼¿¼½á¾§µÄÐÄѪ֮×÷£¡
¡¡¡¡Ä§»ÃÊý×éÃû
¡¡¡¡Çë¿´³ÌÐò£¨±¾ÎijÌÐòÔÚWIN32ƽ̨ϱàÒ룩£º
1. #include <iostream.h>
2. int main(int argc, char* argv[])
3. {
4. ¡¡char str[10];
5. ¡¡char *pStr = str;
6. ¡¡cout << sizeof(str) << endl;
7. ¡¡cout << sizeof(pStr) << endl;
8. ¡¡return 0;
9. }
¡¡¡¡1¡¢Êý×é ......
ÒýÑÔ
¡¡¡¡Ö¸ÕëÊÇC/C++ÓïÑÔµÄÌØÉ«£¬¶øÊý×éÃûÓëÖ¸ÕëÓÐÌ«¶àµÄÏàËÆ£¬ÉõÖÁºÜ¶àʱºò£¬Êý×éÃû¿ÉÒÔ×÷ΪָÕëʹÓá£ÓÚÊǺõ£¬ºÜ¶à³ÌÐòÉè¼ÆÕ߾ͱ»¸ãºýÍ¿ÁË¡£¶øÐí¶àµÄ´óѧÀÏʦ£¬ËûÃÇÔÚCÓïÑԵĽÌѧ¹ý³ÌÖÐÒ²´íÎóµÃ¸øÑ§Éú½²½â£º"Êý×éÃû¾ÍÊÇÖ¸Õë"¡£ºÜÐÒÔË£¬ÎҵĴóѧÀÏʦ¾ÍÊÇÆäÖÐÖ®Ò»¡£Ê±ÖÁ½ñÈÕ£¬ÎÒÈÕ¸´Ò»ÈյؽøÐÐ×ÅC/C++ÏîÄ¿µÄ¿ª·¢£¬¶øÉí±ß»¹Ò»Ö±³äÂúÕâÑùµÄ³ÌÐòÔ±£¬ËûÃDZ£Áô×Å"Êý×éÃû¾ÍÊÇÖ¸Õë"µÄÎó½â¡£
¡¡¡¡Ïë±ØÕâÖÖÎó½âµÄ¸ùÔ´ÔÚÓÚ¹úÄÚijָÃûµÄC³ÌÐòÉè¼Æ½Ì³Ì¡£Èç¹ûÕâÆªÎÄÕÂÄܹ»¾ÀÕýÐí¶àÖйú³ÌÐòÔ±¶ÔÊý×éÃûºÍÖ¸ÕëµÄÎó½â£¬±ÊÕ߾Ͳ»ÉõÐÀοÁË¡£½è´ËÎÄ£¬±ÊÕßÕ¾ÔÚÎÞÊý¶Ô֪ʶÈç¼¢ËÆ¿ÊµÄÖйú³ÌÐòÔ±Ö®ÖУ¬ÉîÉî¼ÄÏ£ÍûÓÚ¹úÄڵļÆËã»úͼÊé±àдÕßÃÇ£¬ÄÜÒÔ"ÉîÈë̽Ë÷"µÄ˼ά·½Ê½ºÍ¾«ÒæÇ󾫵ÄÈÏÕæÌ¬¶ÈÀ´¶Ô´ýͼÊé±àд¹¤×÷£¬µ«Ô¸ÊÐÃæÉ϶àһЩÈÚÈë×÷Õß˼¿¼½á¾§µÄÐÄѪ֮×÷£¡
¡¡¡¡Ä§»ÃÊý×éÃû
¡¡¡¡Çë¿´³ÌÐò£¨±¾ÎijÌÐòÔÚWIN32ƽ̨ϱàÒ룩£º
1. #include <iostream.h>
2. int main(int argc, char* argv[])
3. {
4. ¡¡char str[10];
5. ¡¡char *pStr = str;
6. ¡¡cout << sizeof(str) << endl;
7. ¡¡cout << sizeof(pStr) << endl;
8. ¡¡return 0;
9. }
¡¡¡¡1¡¢Êý×é ......