1、strcpy函數(shù)是復(fù)制字符串的,接受兩個(gè)參數(shù),一個(gè)是被復(fù)制字符串,另一個(gè)新字符串。具體的用法,首先打開(kāi)編輯器新建一個(gè)c語(yǔ)言的程序文件,寫入頭文件和主函數(shù):
創(chuàng)新互聯(lián)建站從2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元滕州做網(wǎng)站,已為上家服務(wù),為滕州各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575
2、接著定義兩個(gè)數(shù)組a和b,程序經(jīng)過(guò)strcpy函數(shù)處理,將b數(shù)組中的字符串復(fù)制到a數(shù)組中,最后打印出結(jié)果:
3、最后來(lái)看看效果。打開(kāi)調(diào)試窗口,輸入一句話,按下回車輸出了這句話。以上就是C語(yǔ)言中strcpy的用法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include stdio.h
#include time.h
/*把從src地址開(kāi)始的字符串復(fù)制到以dest開(kāi)始的字符串中*/
char* strcopy (char* dest, char *src) {
char* r = dest;
while((*r++ = *src++)!='\0');
return dest;
}
int main () {
char *str1="abcde";
char *str2;
str2 = strcopy (str2, str1); /*把str1復(fù)制到str2*/
puts (str2);
return 0;
}
1、puts函數(shù)——輸出字符串的函數(shù)
一般的形式為puts(字符串組)
作用:將一個(gè)字符串輸出到終端。如,char一個(gè)string,并賦予初值。調(diào)用puts(string);進(jìn)行字符串的輸出。
2、gets函數(shù)——輸入字符串的函數(shù)
一般的形式:gets(字符數(shù)組)
作用:從終端輸入一個(gè)字符串到字符數(shù)組,并且得到一個(gè)函數(shù)值成為字符數(shù)組的起始地址。
gets(str);
鍵盤輸入,,,,你懂得。
注意:puts和gets函數(shù)只能輸出或者輸入一個(gè)字符串。
3、strcat函數(shù)——字符串連接函數(shù)
一般的形式:strcat(字符數(shù)組1,字符數(shù)組2);
作用:把兩個(gè)字符串?dāng)?shù)組中字符串連接起來(lái),把字符串2連接到字符串1的后面。
說(shuō)明:字符數(shù)組1必須足夠大,以便容納連接后的新字符串。
4、strcpy/strncpy函數(shù)——字符串復(fù)制函數(shù)
一般形式:strcpy(字符數(shù)組1,字符串2);
作用:將字符串2復(fù)制到字符數(shù)組1中去。
如:char str1[10],str2[]="DongTeng";
strcpy(str1,str2);
執(zhí)行后的結(jié)果為:你懂得
注意:
1. 不能用賦值語(yǔ)句直接將一個(gè)字符串常量或者字符數(shù)組直接給一個(gè)字符數(shù)組。
2. 用strncpy可以賦值指定的位置的字符。strncpy(str1,str2,3);將str2中的第3個(gè)字符復(fù)制到str1中。
5、strcmp函數(shù)——字符串比較函數(shù)
一般形式:strcmp(字符串1,字符串2);
作用:用來(lái)比較兩個(gè)字符串的差異。具有不同的比較規(guī)則。
6、strlen函數(shù)——測(cè)字符串長(zhǎng)度的函數(shù)
一般形式:strlen(字符數(shù)組);
如:char str[10]="DongTeng";
printf("%d",strlen(str));
得到的結(jié)果是:5
7、strlwr函數(shù)——轉(zhuǎn)換為小寫的函數(shù)
一般形式:strlwr(字符串);
8、strupr函數(shù)——轉(zhuǎn)換為大寫的函數(shù)
一般形式:strupr(字符串)。
#includestdio.h
char *custom_cpy(char *to,char *from);
int main(int argc,char *argv[]){
char *from = "i like c langanger";
char to[30];
char *ptr = custom_cpy(to,from);
printf("%s,%s\n",ptr,to);
return 0;
}
char *custom_cpy(char *to,char *from){
if(to == NULL || from == NULL){
return NULL;
}?
char *p = to;
for(;*from!='\0';from++,to++){
*to = *from;
}?
*to = '\0';//拷貝完畢之后一定要加一個(gè)結(jié)束符號(hào)
return p;
}
擴(kuò)展資料:
字符串相關(guān)函數(shù)應(yīng)用:
1. 連接運(yùn)算 concat(s1,s2,s3…sn) 相當(dāng)于s1+s2+s3+…+sn。
例:concat(‘11’,'aa’)='11aa’;
2. 求子串。 Copy(s,I,I) 從字符串s中截取第I個(gè)字符開(kāi)始后的長(zhǎng)度為l的子串。
例:copy(‘a(chǎn)bdag’,2,3)=’bda’;
3. 刪除子串。過(guò)程 Delete(s,I,l) 從字符串s中刪除第I個(gè)字符開(kāi)始后的長(zhǎng)度為l的子串。
例:s:=’abcde’;delete(s,2,3);結(jié)果s:=’ae’;
4. 插入子串。 過(guò)程Insert(s1,s2,I) 把s1插入到s2的第I個(gè)位置
例:s:=abc;insert(‘12’,s,2);結(jié)果s:=’a12bc’;
5. 求字符串長(zhǎng)度 length(s) 例:length(‘12abc’)=5;
參考資料:
百度百科-字符串