c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法的用法你知道嗎?下面小編就跟你們?cè)敿?xì)介紹下c語(yǔ)言中strcpy的用法的用法,希望對(duì)你們有用。
c語(yǔ)言中strcpy的用法的用法如下:
strcpy原型聲明:extern char *strcpy(char* dest, const char *src);
頭文件:#include <string.h>
功能:把從src地址開(kāi)始且含有NULL結(jié)束符的字符串復(fù)制到以dest開(kāi)始的地址空間
說(shuō)明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
/**********************
* C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)strcpy的一種典型的工業(yè)級(jí)的最簡(jiǎn)實(shí)現(xiàn)
* 返回值:目標(biāo)串的地址。
* 對(duì)于出現(xiàn)異常的情況ANSI-C99標(biāo)準(zhǔn)并未定義,故由實(shí)現(xiàn)者決定返回值,通常為NULL。
* 參數(shù):
* strDestination 目標(biāo)串
* strSource 源串
***********************/
char *strcpy(char *strDestination,const char *strSource)
{
assert(strDestination!=NULL && strSource!=NULL);
char *strD=strDestination;
while ((*strD++=*strSource++)!='
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法的用法你知道嗎?下面小編就跟你們?cè)敿?xì)介紹下c語(yǔ)言中strcpy的用法的用法,希望對(duì)你們有用。
c語(yǔ)言中strcpy的用法的用法如下:
strcpy原型聲明:extern char *strcpy(char* dest, const char *src);
頭文件:#include <string.h>
功能:把從src地址開(kāi)始且含有NULL結(jié)束符的字符串復(fù)制到以dest開(kāi)始的地址空間
說(shuō)明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
/**********************
* C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)strcpy的一種典型的工業(yè)級(jí)的最簡(jiǎn)實(shí)現(xiàn)
* 返回值:目標(biāo)串的地址。
* 對(duì)于出現(xiàn)異常的情況ANSI-C99標(biāo)準(zhǔn)并未定義,故由實(shí)現(xiàn)者決定返回值,通常為NULL。
* 參數(shù):
* strDestination 目標(biāo)串
* strSource 源串
***********************/
char *strcpy(char *strDestination,const char *strSource)
{
assert(strDestination!=NULL && strSource!=NULL);
char *strD=strDestination;
while ((*strD++=*strSource++)!='\0');
return strDestination;
}
/*
GNU-C中的實(shí)現(xiàn)(節(jié)選):
*/
char* strcpy(char *d, const char *s)
{
char *r=d;
while((*d++=*s++));
return r;
}
/* while((*d++=*s++)); 的解釋?zhuān)簝蓪永ㄌ?hào)是為了取賦值表達(dá)式的值,
而賦值表達(dá)式的值為左操作數(shù),所以在復(fù)制NULL后,循環(huán)停止 */
strcat原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,則存在于<cstring>頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說(shuō)明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
//將源字符串加const,表明其為輸入?yún)?shù)
char *strcat(char *strDest, const char *strSrc)
{
// 后文return address,故不能放在assert斷言之后聲明address
char *address = strDest;
assert((strDest != NULL) && (strSrc != NULL)); //對(duì)源地址和目的地址加非0斷言
while(*strDest) //是while(*strDest!='\0')的簡(jiǎn)化形式
{
//若使用while(*strDest++),則會(huì)出錯(cuò),因?yàn)檠h(huán)結(jié)束后strDest還會(huì)執(zhí)行一次++,
//那么strDest將指向'\0'的下一個(gè)位置。/所以要在循環(huán)體內(nèi)++;因?yàn)橐?strDest最后指
//向該字符串的結(jié)束標(biāo)志'\0'。
strDest++;
}
while(*strDest++ = *strSrc++)
{
NULL; //該循環(huán)條件內(nèi)可以用++,
} //此處可以加語(yǔ)句*strDest='\0';無(wú)必要
return address; //為了實(shí)現(xiàn)鏈?zhǔn)讲僮?,將目的地址返?/p>
}
return strDestination;
}
/*
GNU-C中的實(shí)現(xiàn)(節(jié)選):
*/
char* strcpy(char *d, const char *s)
{
char *r=d;
while((*d++=*s++));
return r;
}
/* while((*d++=*s++)); 的解釋?zhuān)簝蓪永ㄌ?hào)是為了取賦值表達(dá)式的值,
而賦值表達(dá)式的值為左操作數(shù),所以在復(fù)制NULL后,循環(huán)停止 */
strcat原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,則存在于<cstring>頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法的用法你知道嗎?下面小編就跟你們?cè)敿?xì)介紹下c語(yǔ)言中strcpy的用法的用法,希望對(duì)你們有用。
c語(yǔ)言中strcpy的用法的用法如下:
strcpy原型聲明:extern char *strcpy(char* dest, const char *src);
頭文件:#include <string.h>
功能:把從src地址開(kāi)始且含有NULL結(jié)束符的字符串復(fù)制到以dest開(kāi)始的地址空間
說(shuō)明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
/**********************
* C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)strcpy的一種典型的工業(yè)級(jí)的最簡(jiǎn)實(shí)現(xiàn)
* 返回值:目標(biāo)串的地址。
* 對(duì)于出現(xiàn)異常的情況ANSI-C99標(biāo)準(zhǔn)并未定義,故由實(shí)現(xiàn)者決定返回值,通常為NULL。
* 參數(shù):
* strDestination 目標(biāo)串
* strSource 源串
***********************/
char *strcpy(char *strDestination,const char *strSource)
{
assert(strDestination!=NULL && strSource!=NULL);
char *strD=strDestination;
while ((*strD++=*strSource++)!='\0');
return strDestination;
}
/*
GNU-C中的實(shí)現(xiàn)(節(jié)選):
*/
char* strcpy(char *d, const char *s)
{
char *r=d;
while((*d++=*s++));
return r;
}
/* while((*d++=*s++)); 的解釋?zhuān)簝蓪永ㄌ?hào)是為了取賦值表達(dá)式的值,
而賦值表達(dá)式的值為左操作數(shù),所以在復(fù)制NULL后,循環(huán)停止 */
strcat原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,則存在于<cstring>頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說(shuō)明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
//將源字符串加const,表明其為輸入?yún)?shù)
char *strcat(char *strDest, const char *strSrc)
{
// 后文return address,故不能放在assert斷言之后聲明address
char *address = strDest;
assert((strDest != NULL) && (strSrc != NULL)); //對(duì)源地址和目的地址加非0斷言
while(*strDest) //是while(*strDest!='\0')的簡(jiǎn)化形式
{
//若使用while(*strDest++),則會(huì)出錯(cuò),因?yàn)檠h(huán)結(jié)束后strDest還會(huì)執(zhí)行一次++,
//那么strDest將指向'\0'的下一個(gè)位置。/所以要在循環(huán)體內(nèi)++;因?yàn)橐?strDest最后指
//向該字符串的結(jié)束標(biāo)志'\0'。
strDest++;
}
while(*strDest++ = *strSrc++)
{
NULL; //該循環(huán)條件內(nèi)可以用++,
} //此處可以加語(yǔ)句*strDest='\0';無(wú)必要
return address; //為了實(shí)現(xiàn)鏈?zhǔn)讲僮?,將目的地址返?/p>
}
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法的用法你知道嗎?下面小編就跟你們?cè)敿?xì)介紹下c語(yǔ)言中strcpy的用法的用法,希望對(duì)你們有用。
c語(yǔ)言中strcpy的用法的用法如下:
strcpy原型聲明:extern char *strcpy(char* dest, const char *src);
頭文件:#include <string.h>
功能:把從src地址開(kāi)始且含有NULL結(jié)束符的字符串復(fù)制到以dest開(kāi)始的地址空間
說(shuō)明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
/**********************
* C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)strcpy的一種典型的工業(yè)級(jí)的最簡(jiǎn)實(shí)現(xiàn)
* 返回值:目標(biāo)串的地址。
* 對(duì)于出現(xiàn)異常的情況ANSI-C99標(biāo)準(zhǔn)并未定義,故由實(shí)現(xiàn)者決定返回值,通常為NULL。
* 參數(shù):
* strDestination 目標(biāo)串
* strSource 源串
***********************/
char *strcpy(char *strDestination,const char *strSource)
{
assert(strDestination!=NULL && strSource!=NULL);
char *strD=strDestination;
while ((*strD++=*strSource++)!='\0');
return strDestination;
}
/*
GNU-C中的實(shí)現(xiàn)(節(jié)選):
*/
char* strcpy(char *d, const char *s)
{
char *r=d;
while((*d++=*s++));
return r;
}
/* while((*d++=*s++)); 的解釋?zhuān)簝蓪永ㄌ?hào)是為了取賦值表達(dá)式的值,
而賦值表達(dá)式的值為左操作數(shù),所以在復(fù)制NULL后,循環(huán)停止 */
strcat原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,則存在于<cstring>頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說(shuō)明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
//將源字符串加const,表明其為輸入?yún)?shù)
char *strcat(char *strDest, const char *strSrc)
{
// 后文return address,故不能放在assert斷言之后聲明address
char *address = strDest;
assert((strDest != NULL) && (strSrc != NULL)); //對(duì)源地址和目的地址加非0斷言
while(*strDest) //是while(*strDest!='\0')的簡(jiǎn)化形式
{
//若使用while(*strDest++),則會(huì)出錯(cuò),因?yàn)檠h(huán)結(jié)束后strDest還會(huì)執(zhí)行一次++,
//那么strDest將指向'\0'的下一個(gè)位置。/所以要在循環(huán)體內(nèi)++;因?yàn)橐?strDest最后指
//向該字符串的結(jié)束標(biāo)志'\0'。
strDest++;
}
while(*strDest++ = *strSrc++)
{
NULL; //該循環(huán)條件內(nèi)可以用++,
} //此處可以加語(yǔ)句*strDest='\0';無(wú)必要
return address; //為了實(shí)現(xiàn)鏈?zhǔn)讲僮?,將目的地址返?/p>
}
說(shuō)明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
//將源字符串加const,表明其為輸入?yún)?shù)
char *strcat(char *strDest, const char *strSrc)
{
// 后文return address,故不能放在assert斷言之后聲明address
char *address = strDest;
assert((strDest != NULL) && (strSrc != NULL)); //對(duì)源地址和目的地址加非0斷言
while(*strDest) //是while(*strDest!='
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法的用法你知道嗎?下面小編就跟你們?cè)敿?xì)介紹下c語(yǔ)言中strcpy的用法的用法,希望對(duì)你們有用。
c語(yǔ)言中strcpy的用法的用法如下:
strcpy原型聲明:extern char *strcpy(char* dest, const char *src);
頭文件:#include <string.h>
功能:把從src地址開(kāi)始且含有NULL結(jié)束符的字符串復(fù)制到以dest開(kāi)始的地址空間
說(shuō)明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
/**********************
* C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)strcpy的一種典型的工業(yè)級(jí)的最簡(jiǎn)實(shí)現(xiàn)
* 返回值:目標(biāo)串的地址。
* 對(duì)于出現(xiàn)異常的情況ANSI-C99標(biāo)準(zhǔn)并未定義,故由實(shí)現(xiàn)者決定返回值,通常為NULL。
* 參數(shù):
* strDestination 目標(biāo)串
* strSource 源串
***********************/
char *strcpy(char *strDestination,const char *strSource)
{
assert(strDestination!=NULL && strSource!=NULL);
char *strD=strDestination;
while ((*strD++=*strSource++)!='\0');
return strDestination;
}
/*
GNU-C中的實(shí)現(xiàn)(節(jié)選):
*/
char* strcpy(char *d, const char *s)
{
char *r=d;
while((*d++=*s++));
return r;
}
/* while((*d++=*s++)); 的解釋?zhuān)簝蓪永ㄌ?hào)是為了取賦值表達(dá)式的值,
而賦值表達(dá)式的值為左操作數(shù),所以在復(fù)制NULL后,循環(huán)停止 */
strcat原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,則存在于<cstring>頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說(shuō)明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
//將源字符串加const,表明其為輸入?yún)?shù)
char *strcat(char *strDest, const char *strSrc)
{
// 后文return address,故不能放在assert斷言之后聲明address
char *address = strDest;
assert((strDest != NULL) && (strSrc != NULL)); //對(duì)源地址和目的地址加非0斷言
while(*strDest) //是while(*strDest!='\0')的簡(jiǎn)化形式
{
//若使用while(*strDest++),則會(huì)出錯(cuò),因?yàn)檠h(huán)結(jié)束后strDest還會(huì)執(zhí)行一次++,
//那么strDest將指向'\0'的下一個(gè)位置。/所以要在循環(huán)體內(nèi)++;因?yàn)橐?strDest最后指
//向該字符串的結(jié)束標(biāo)志'\0'。
strDest++;
}
while(*strDest++ = *strSrc++)
{
NULL; //該循環(huán)條件內(nèi)可以用++,
} //此處可以加語(yǔ)句*strDest='\0';無(wú)必要
return address; //為了實(shí)現(xiàn)鏈?zhǔn)讲僮?,將目的地址返?/p>
}
{
//若使用while(*strDest++),則會(huì)出錯(cuò),因?yàn)檠h(huán)結(jié)束后strDest還會(huì)執(zhí)行一次++,
//那么strDest將指向'
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法的用法你知道嗎?下面小編就跟你們?cè)敿?xì)介紹下c語(yǔ)言中strcpy的用法的用法,希望對(duì)你們有用。
c語(yǔ)言中strcpy的用法的用法如下:
strcpy原型聲明:extern char *strcpy(char* dest, const char *src);
頭文件:#include <string.h>
功能:把從src地址開(kāi)始且含有NULL結(jié)束符的字符串復(fù)制到以dest開(kāi)始的地址空間
說(shuō)明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
/**********************
* C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)strcpy的一種典型的工業(yè)級(jí)的最簡(jiǎn)實(shí)現(xiàn)
* 返回值:目標(biāo)串的地址。
* 對(duì)于出現(xiàn)異常的情況ANSI-C99標(biāo)準(zhǔn)并未定義,故由實(shí)現(xiàn)者決定返回值,通常為NULL。
* 參數(shù):
* strDestination 目標(biāo)串
* strSource 源串
***********************/
char *strcpy(char *strDestination,const char *strSource)
{
assert(strDestination!=NULL && strSource!=NULL);
char *strD=strDestination;
while ((*strD++=*strSource++)!='\0');
return strDestination;
}
/*
GNU-C中的實(shí)現(xiàn)(節(jié)選):
*/
char* strcpy(char *d, const char *s)
{
char *r=d;
while((*d++=*s++));
return r;
}
/* while((*d++=*s++)); 的解釋?zhuān)簝蓪永ㄌ?hào)是為了取賦值表達(dá)式的值,
而賦值表達(dá)式的值為左操作數(shù),所以在復(fù)制NULL后,循環(huán)停止 */
strcat原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,則存在于<cstring>頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說(shuō)明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
//將源字符串加const,表明其為輸入?yún)?shù)
char *strcat(char *strDest, const char *strSrc)
{
// 后文return address,故不能放在assert斷言之后聲明address
char *address = strDest;
assert((strDest != NULL) && (strSrc != NULL)); //對(duì)源地址和目的地址加非0斷言
while(*strDest) //是while(*strDest!='\0')的簡(jiǎn)化形式
{
//若使用while(*strDest++),則會(huì)出錯(cuò),因?yàn)檠h(huán)結(jié)束后strDest還會(huì)執(zhí)行一次++,
//那么strDest將指向'\0'的下一個(gè)位置。/所以要在循環(huán)體內(nèi)++;因?yàn)橐?strDest最后指
//向該字符串的結(jié)束標(biāo)志'\0'。
strDest++;
}
while(*strDest++ = *strSrc++)
{
NULL; //該循環(huán)條件內(nèi)可以用++,
} //此處可以加語(yǔ)句*strDest='\0';無(wú)必要
return address; //為了實(shí)現(xiàn)鏈?zhǔn)讲僮?,將目的地址返?/p>
}
//向該字符串的結(jié)束標(biāo)志'
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法的用法你知道嗎?下面小編就跟你們?cè)敿?xì)介紹下c語(yǔ)言中strcpy的用法的用法,希望對(duì)你們有用。
c語(yǔ)言中strcpy的用法的用法如下:
strcpy原型聲明:extern char *strcpy(char* dest, const char *src);
頭文件:#include <string.h>
功能:把從src地址開(kāi)始且含有NULL結(jié)束符的字符串復(fù)制到以dest開(kāi)始的地址空間
說(shuō)明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
/**********************
* C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)strcpy的一種典型的工業(yè)級(jí)的最簡(jiǎn)實(shí)現(xiàn)
* 返回值:目標(biāo)串的地址。
* 對(duì)于出現(xiàn)異常的情況ANSI-C99標(biāo)準(zhǔn)并未定義,故由實(shí)現(xiàn)者決定返回值,通常為NULL。
* 參數(shù):
* strDestination 目標(biāo)串
* strSource 源串
***********************/
char *strcpy(char *strDestination,const char *strSource)
{
assert(strDestination!=NULL && strSource!=NULL);
char *strD=strDestination;
while ((*strD++=*strSource++)!='\0');
return strDestination;
}
/*
GNU-C中的實(shí)現(xiàn)(節(jié)選):
*/
char* strcpy(char *d, const char *s)
{
char *r=d;
while((*d++=*s++));
return r;
}
/* while((*d++=*s++)); 的解釋?zhuān)簝蓪永ㄌ?hào)是為了取賦值表達(dá)式的值,
而賦值表達(dá)式的值為左操作數(shù),所以在復(fù)制NULL后,循環(huán)停止 */
strcat原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,則存在于<cstring>頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說(shuō)明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
//將源字符串加const,表明其為輸入?yún)?shù)
char *strcat(char *strDest, const char *strSrc)
{
// 后文return address,故不能放在assert斷言之后聲明address
char *address = strDest;
assert((strDest != NULL) && (strSrc != NULL)); //對(duì)源地址和目的地址加非0斷言
while(*strDest) //是while(*strDest!='\0')的簡(jiǎn)化形式
{
//若使用while(*strDest++),則會(huì)出錯(cuò),因?yàn)檠h(huán)結(jié)束后strDest還會(huì)執(zhí)行一次++,
//那么strDest將指向'\0'的下一個(gè)位置。/所以要在循環(huán)體內(nèi)++;因?yàn)橐?strDest最后指
//向該字符串的結(jié)束標(biāo)志'\0'。
strDest++;
}
while(*strDest++ = *strSrc++)
{
NULL; //該循環(huán)條件內(nèi)可以用++,
} //此處可以加語(yǔ)句*strDest='\0';無(wú)必要
return address; //為了實(shí)現(xiàn)鏈?zhǔn)讲僮?,將目的地址返?/p>
}
strDest++;
}
while(*strDest++ = *strSrc++)
{
NULL; //該循環(huán)條件內(nèi)可以用++,
} //此處可以加語(yǔ)句*strDest='
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法
c語(yǔ)言中strcpy的用法的用法你知道嗎?下面小編就跟你們?cè)敿?xì)介紹下c語(yǔ)言中strcpy的用法的用法,希望對(duì)你們有用。
c語(yǔ)言中strcpy的用法的用法如下:
strcpy原型聲明:extern char *strcpy(char* dest, const char *src);
頭文件:#include <string.h>
功能:把從src地址開(kāi)始且含有NULL結(jié)束符的字符串復(fù)制到以dest開(kāi)始的地址空間
說(shuō)明:src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
/**********************
* C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)strcpy的一種典型的工業(yè)級(jí)的最簡(jiǎn)實(shí)現(xiàn)
* 返回值:目標(biāo)串的地址。
* 對(duì)于出現(xiàn)異常的情況ANSI-C99標(biāo)準(zhǔn)并未定義,故由實(shí)現(xiàn)者決定返回值,通常為NULL。
* 參數(shù):
* strDestination 目標(biāo)串
* strSource 源串
***********************/
char *strcpy(char *strDestination,const char *strSource)
{
assert(strDestination!=NULL && strSource!=NULL);
char *strD=strDestination;
while ((*strD++=*strSource++)!='\0');
return strDestination;
}
/*
GNU-C中的實(shí)現(xiàn)(節(jié)選):
*/
char* strcpy(char *d, const char *s)
{
char *r=d;
while((*d++=*s++));
return r;
}
/* while((*d++=*s++)); 的解釋?zhuān)簝蓪永ㄌ?hào)是為了取賦值表達(dá)式的值,
而賦值表達(dá)式的值為左操作數(shù),所以在復(fù)制NULL后,循環(huán)停止 */
strcat原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,則存在于<cstring>頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說(shuō)明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來(lái)容納src的字符串。
返回指向dest的指針。
函數(shù)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
//將源字符串加const,表明其為輸入?yún)?shù)
char *strcat(char *strDest, const char *strSrc)
{
// 后文return address,故不能放在assert斷言之后聲明address
char *address = strDest;
assert((strDest != NULL) && (strSrc != NULL)); //對(duì)源地址和目的地址加非0斷言
while(*strDest) //是while(*strDest!='\0')的簡(jiǎn)化形式
{
//若使用while(*strDest++),則會(huì)出錯(cuò),因?yàn)檠h(huán)結(jié)束后strDest還會(huì)執(zhí)行一次++,
//那么strDest將指向'\0'的下一個(gè)位置。/所以要在循環(huán)體內(nèi)++;因?yàn)橐?strDest最后指
//向該字符串的結(jié)束標(biāo)志'\0'。
strDest++;
}
while(*strDest++ = *strSrc++)
{
NULL; //該循環(huán)條件內(nèi)可以用++,
} //此處可以加語(yǔ)句*strDest='\0';無(wú)必要
return address; //為了實(shí)現(xiàn)鏈?zhǔn)讲僮鳎瑢⒛康牡刂贩祷?/p>
}
return address; //為了實(shí)現(xiàn)鏈?zhǔn)讲僮?,將目的地址返?/p>
}