C語言中 本身有strcat函數(shù)。
創(chuàng)新互聯(lián)專注于遜克企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),商城網(wǎng)站定制開發(fā)。遜克網(wǎng)站建設(shè)公司,為遜克等地區(qū)提供建站服務(wù)。全流程按需求定制設(shè)計(jì),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
如果要自己實(shí)現(xiàn) 可以采用指針方式:
char?*my_strcat(char?*s,?char?*d)
{
char?*r?=?s;
while(*r)?r++;
while(*d)?*r++=*d++;
*r=0;
return?s;
}
1、strcat是用來拼接字符串的,它會將參數(shù) src 字符串復(fù)制到參數(shù) dest 所指的字符串尾部。具體用法首先用vs2017新建一個c語言的程序文件,引入頭文件,引入strcat函數(shù)所在的包“string.h”,最后設(shè)置一個主函數(shù):
2、接著用str函數(shù)復(fù)制一段話,首先定義一個80位的char類型變量,接著用strcat函數(shù)拼接成一句話,str函數(shù)接受兩個參數(shù),前一個是待拼接的變量,后面的是需要拼接的內(nèi)容,可以是變量也可以是一串字符;最后用puts函數(shù)輸出str的內(nèi)容即可:
3、按下crtl+F5運(yùn)行調(diào)試程序,在打開的命令提示符中就會顯示出完整的一句話了。以上就是strcat函數(shù)的用法:
編輯本段C函數(shù)
原型
extern char *strcat(char *dest,char *src);
用法
#include string.h 在C++中,則存在于cstring頭文件中。
功能
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說明
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來容納src的字符串。 返回指向dest的指針。
舉例
// strcat.c #include syslib.h #include string.h main() { char d[20]="Golden Global"; char *s=" View"; clrscr(); strcat(d,s); printf("%s",d); getchar(); return 0; } 程序執(zhí)行結(jié)果為: Golden Global View Strcat函數(shù)原型如下: char *strcat(char *strDest, const char *strSrc) //將源字符串加const,表明其為輸入?yún)?shù) { char *address = strDest; //該語句若放在assert之后,編譯出錯 assert((strDest != NULL) (strSrc != NULL)); //對源地址和目的地址加非0斷言 while(*strDest) //是while(*strDest!=’\0’)的簡化形式 { //若使用while(*strDest++),則會出錯,因?yàn)?+是不受循環(huán) strDest++; //約束的。所以要在循環(huán)體內(nèi)++;因?yàn)橐?strDest最后指 } //向該字符串的結(jié)束標(biāo)志’\0’。 while(*strDest++ = *strSrc++) { NULL; //該循環(huán)條件內(nèi)可以用++, } //此處可以加語句*strDest=’\0’;無必要 return address; //為了實(shí)現(xiàn)鏈?zhǔn)讲僮?,將目的地址返?}
編輯本段MATLAB函數(shù)
定義
strcat 即 Strings Catenate,橫向連接字符串。
語法
combinedStr = strcat(s1, s2, ..., sN)
描述
將數(shù)組 s1,s2,...,sN 水平地連接成單個字符串,并保存于變量 combinedStr 中。如果任一參數(shù)是元胞數(shù)組,那么結(jié)果 combinedStr 是一個元胞數(shù)組,否則,combinedStr 是一個字符數(shù)組。
實(shí)例
a = 'Hello' a = Hello b = ' Matlab' b = Matlab c = strcat(a,b) c = Hello Matlab
用法:
#include string.h
在C++中,則存在于cstring頭文件中。
strcat原型:
extern char *strcat(char *dest,char *src);
功能:
把src所指字符串添加到dest結(jié)尾處(覆蓋dest結(jié)尾處的'\0')并添加'\0'。
說明:
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來容納src的字符串。
返回指向dest的指針。
strcat()函數(shù)從名稱來講就是索的含義,用途:在一個字符串的末尾增加新的字符。
函數(shù)定義如下:
char *strcat(char *dest, const char *src);
擴(kuò)展資料
代碼實(shí)現(xiàn)如下:
char *strcat(char *dest, const char *src)
{
char *tmp = dest;
while (*dest)
dest++;
while ((*dest++ = *src++) != '\0');
return tmp;
}
實(shí)現(xiàn)原理:
首先dest地址移動到最后一位,然后增加src參數(shù)值遇到’\0’結(jié)束拷貝。
strcat()也存在著與strcpy()類似的問題。
strcat函數(shù)作用是把src所指向的字符串(包括“\0”)復(fù)制到dest所指向的字符串后面(刪除*dest原來末尾的“\0”)。保證*dest足夠長,以容納被復(fù)制進(jìn)來的*src。*src中原有的字符不變。
strcat是把兩個字符串合并到一起,比如
str1[30] = "Hello";
str2[] = " China";
strcat(str1, str2);
則str1的內(nèi)容就變成"Hello China"。
擴(kuò)展資料:
在C中,函數(shù)原型存在 string.h頭文件中。
在C++中,則存在于cstring頭文件中。
把src所指向的字符串(包括“\0”)復(fù)制到dest所指向的字符串后面(刪除*dest原來末尾的“\0”)。要保證*dest足夠長,以容納被復(fù)制進(jìn)來的*src。*src中原有的字符不變。返回指向dest的指針。
src和dest所指內(nèi)存區(qū)域不可以重疊且dest必須有足夠的空間來容納src的字符串。
參考資料來源:百度百科-strcat
strcat()是追加字符串的函數(shù)。
strcat(char[] a,char []b)即將第二個字符串追加到第一個字符串末尾,第二個字符串值不變,第一個變長。
你的理解是對的 但是使用有誤!追加時需要保證第一個字符串在加上第二個之后依舊不能溢出。在此題中,你的a[]字符串長度在追加上".txt"之后,會溢出,建議在定義a的時候?qū)懮蟘har a[100]保證不溢出。
1
2
3
char a[100];
scanf("%s",a);
strcat(a,".txt");
當(dāng)前題目:c語言函數(shù)strcat,c語言函數(shù)struct
標(biāo)題URL:http://muchs.cn/article42/hcjohc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、App設(shè)計(jì)、軟件開發(fā)、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站設(shè)計(jì)公司、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)