ǶÈëʽC/C++ÃæÊÔÌâ»ã×ܽâ´ð(II)
(±¾ÎÄÔ´×Ôhttp://www.weste.net/2006/2-20/13432127659.html )¡¡¡¡
Ðí¶àÃæÊÔÌâ¿´ËÆ¼òµ¥£¬È´ÐèÒªÉîºñµÄ»ù±¾¹¦²ÅÄܸø³öÍêÃÀµÄ½â´ð¡£ÆóÒµÒªÇóÃæÊÔÕßдһ¸ö×î¼òµ¥µÄstrcpyº¯Êý¶¼¿É¿´³öÃæÊÔÕßÔÚ¼¼ÊõÉϾ¿¾¹´ïµ½ÁËÔõÑùµÄ³Ì¶È£¬ÎÒÃÇÄÜÕæÕýдºÃÒ»¸östrcpyº¯ÊýÂð£¿ÎÒÃǶ¼¾õµÃ×Ô¼ºÄÜ£¬¿ÉÊÇÎÒÃÇд³öµÄstrcpyºÜ¿ÉÄÜÖ»ÄÜÄõ½10·ÖÖеÄ2·Ö¡£¶ÁÕ߿ɴӱ¾ÎÄ¿´µ½ strcpyº¯Êý´Ó2·Öµ½10·Ö½â´ðµÄÀý×Ó£¬¿´¿´×Ô¼ºÊôÓÚʲôÑùµÄ²ã´Î¡£´ËÍ⣬»¹ÓÐÒ»Ð©ÃæÊÔÌ⿼²éÃæÊÔÕßÃô½ÝµÄ˼άÄÜÁ¦¡£
¡¡¡¡·ÖÎöÕâÐ©ÃæÊÔÌ⣬±¾Éí°üº¬ºÜÇ¿µÄȤζÐÔ£»¶ø×÷ΪһÃûÑз¢ÈËÔ±£¬Í¨¹ý¶ÔÕâÐ©ÃæÊÔÌâµÄÉîÈëÆÊÎöÔò¿É½øÒ»²½ÔöÇ¿×ÔÉíµÄÄÚ¹¦¡£
ÕÒ´íÌâ
ÊÔÌâ1 £º
void test1()
{
¡¡char string[10];
¡¡char* str1 = "0123456789";
¡¡strcpy( string, str1 );
}
¡¡
ÊÔÌâ2 £º
void test2()
{
¡¡char string[10], str1[10];
¡¡int i;
¡¡for(i=0; i<10; i++)
¡¡{
¡¡¡¡ str1[i] = 'a';
¡¡}
¡¡strcpy( string, str1 );
}
ÊÔÌâ3 £º
void test3(char* str1)
{
¡¡char string[10];
¡¡if( strlen( str1 ) <= 10 )
¡¡{
¡¡¡¡strcpy( string, str1 );
¡¡}
}
½â´ð£º
¡¡¡¡ÊÔÌâ1×Ö·û´®str1ÐèÒª11¸ö×Ö½Ú²ÅÄÜ´æ·ÅÏ£¨°üÀ¨Ä©Î²µÄ’\0’£©£¬¶østringÖ»ÓÐ10¸ö×ֽڵĿռ䣬strcpy»áµ¼ÖÂÊý×éÔ½½ç£»
¡¡¡¡¶ÔÊÔÌâ2£¬Èç¹ûÃæÊÔÕßÖ¸³ö×Ö·ûÊý×éstr1²»ÄÜÔÚÊý×éÄÚ½áÊø¿ÉÒÔ¸ø3·Ö£»Èç¹ûÃæÊÔÕßÖ¸³östrcpy(string, str1)µ÷ÓÃʹµÃ´Óstr1ÄÚ´æÆð¸´ÖƵ½stringÄÚ´æÆðËù¸´ÖƵÄ×Ö½ÚÊý¾ßÓв»È·¶¨ÐÔ¿ÉÒÔ¸ø7·Ö£¬ÔÚ´Ë»ù´¡ÉÏÖ¸³ö¿âº¯Êýstrcpy¹¤×÷·½Ê½µÄ¸ø10 ·Ö£»
¡¡¡¡¶ÔÊÔÌâ3£¬if(strlen(str1) <= 10)Ó¦¸ÄΪif(strlen(str1) < 10)£¬ÒòΪstrlenµÄ½á¹ûδͳ¼Æ’\0’ËùÕ¼ÓõÄ1¸ö×Ö½Ú¡£
ÆÊÎö£º
¡¡¡¡¿¼²é¶Ô»ù±¾¹¦µÄÕÆÎÕ£º
¡¡¡¡(1)×Ö·û´®ÒÔ’\0’½áβ£»
¡¡¡¡(2)¶ÔÊý×éÔ½½ç°ÑÎÕµÄÃô¸Ð¶È£»
¡¡¡¡(3)¿âº¯ÊýstrcpyµÄ¹¤×÷·½Ê½£¬Èç¹û±àдһ¸ö±ê×¼strcpyº¯Êý µÄ×Ü·ÖֵΪ10£¬ÏÂÃæ¸ø³ö¼¸¸ö²»Í¬µÃ·ÖµÄ´ð°¸£º
¡¡¡¡2·Ö
void strcpy( char *strDest, char *strSrc )
{
¡¡ while( (*strDest++ = * strSrc++) != ‘\0’ );
}
4·Ö
void strcpy( char *strDest, const char *strSrc )
//½«Ô´×Ö·û´®¼Óconst£¬±íÃ÷ÆäΪÊäÈë²ÎÊý£¬¼Ó2·Ö
{
¡¡ while( (*strDest++ = * strSrc++) != ‘\0’ );
}
7·Ö
void strcpy(char *strDest, const char *strSrc)
{
¡¡
Ïà¹ØÎĵµ£º
1¡¢bool¡¢float¡¢Ö¸Õë±äÁ¿Óë"ÁãÖµ"±È½ÏµÄifÓï¾ä£¿
´ð£º
bool flag; if(flag)£¬if(!flag)
char *p; if(p==NULL)£¬if(p!=NULL)
float x;
const float EPSILON = 1e-6;
if((x>=-EPSILON)&&(x<=EPSILON)) //(-0.000001~0.000001)
if((x<-EPSILON)&& ......
×î½üÔÚcsdnµÄÂÛ̳ÉÏ·¢ÁËÕâÑùÒ»¸öÌû×ÓÈçÏÂ
int a=5;
a*=a/=a++;
ÎÒÔÚÒ»±¾¶þ¼¶cµÄÊéÉÏ¿´µ½µÄ´ð°¸ÊÇ2 ÓÉÓÚÎÒ¶Ô´ËÌâ²¢²»ÊÇÊ®·ÖÀí½â ËùÒÔÔÚÂÛ̳ÉÏ·¢±í ¿´ÓÐûÓÐÈËÄܰï׎âÊÍһϠȴûÓÐÏëµ½ÒýÀ´µÄ40¶àÂ¥µÄÒ»¸ö³¤Ìù ÒÔÖÁÓÚµ½×îºóÌÖÂÛµÄÄÚÈÝÔ¶Ô¶³¬¹ýµÄÌâÄ¿±¾Éí ÕæÊµ²»½â,ΪʲôÕâôÓÐÕùÒéµÄÌâÈ´ÄÃÀ´¿¼ÈË,Äѵ½¶¼Òª°´¶þ¼¶cµÄvc±àÒ ......
Ìâ¼Ç£º
ËùÓеÄÍêÃÀ£¬¶¼ÊÇÔÚ±ÀÀ£µÄÒ»¿Ì´ïµ½µÄ£¡
ÎÒÒ»Ö±»Ø±Ü³ÌÐòµÄÄÚ´æ¹ÜÀí£¬ÒòΪ°®Ö®ÓúÉºÞÖ®ÓúÁÒ¡£µ«ÊÇ£¬»¹ÊÇÓɺܶàµÄÅóÓÑÒ»Ö±ÔÚÌåÕâ·½ÃæµÄÎÊÌ⣬ËùÒÔ¾ÍË÷ÐÔ°ÑËü̹°×ÁË£¬Ò²Ðí¶ÔÄãÎÒ¶¼ÊÇÒ»¼þºÃÊÂÇé¡£
Ê×ÏÈ£¬ÐèÒª¸ãÇå³þ£º±äÁ¿µÄÀàÐͺÍËüµÄ´æ´¢Àà±ðÊÇÁ½¸ö¸ÅÄî¡£
Êý¾ÝÀàÐͺÍÄÚ´æ¹ÜÀíûÓÐÖ±½ÓµÄ¹ØÏµ¡£
Ò»¸öÓÉc/C++±à ......
ϵͳ»·¾³£ºUbuntu 9.04
Èí¼þ»·¾³£ºNetBeans 6.7.1 C/C++ ¡¢JDK1.6.0_16
±¾´ÎÄ¿µÄ£ºÍê³ÉNetBeans 6.7.1 C/C++ µÄÅäÖù¤×÷¡¢±àÒë²âÊÔ¼°¶ÔÖÐÎÄÖ§³Ö
Ê×ÏÈ´Ó¹ÙÍøÉÏÏÂÔØ×îаæµÄNetbeans Ñ¡ÔñC/C++¹¤×÷̨ÏÂÔØ[µã»÷½øÈë]£¬µ¯³öµÄÐÂÍøÒ³½«»á×Ô¶¯ÏÂÔØ£¬ÈçÏÂͼ£º
ÔÚ½øÐа²×°Ö®Ç°£¬ÎÒÃÇÏȰ²×°JDK£¬ ......
C×Ö·û´®³¤¶È¶¨Ò广·¶
£¨×ªÔØÇë×¢Ã÷À´Ô´ÓÚ½ðÇìµÄרÀ¸£©
ÒòΪ×ÜÊǼûµ½C×Ö·û´®³¤¶ÈÏà¹ØµÄ´íÎó, ËùÓж¨¸ö¹æ·¶³öÀ´, ÓÐÀûÓÚ¼õÉÙ´íÎó.
¹Ø¼üÔÚÓÚC×Ö·û´®Óиö½áβ0, ´¦ÀíʱÐèҪעÒâ.
¶¨Òå×Ö·û´®³¤¶ÈÓÐÁ½ÖÖ·½Ê½, Ò»ÖÖÊÇÓÃ×Ö·û´®µÄ´óС, Ò»ÖÖÊÇ×Ö·û´®µÄ³¤¶È.
×Ö·û´®µÄ´óС¼´ÄÚ´æ¿Õ¼äµÄ´óС, ¶ø´®³¤¶È¼Ó1²ÅÊÇËùÐè¿Õ¼ä.   ......