C語(yǔ)言 strncat()函數(shù)
(1)調(diào)用格式為
strncat(字符數(shù)組,字符串,n)
(2)函數(shù)功能:將字符串中最多n個(gè)字符追加到字符數(shù)組末尾。
(3)說(shuō)明
①關(guān)于“字符數(shù)組”“字符串”的說(shuō)明與strcato函數(shù)一樣。
②n:從字符串中截取n個(gè)字符追加到字符數(shù)組末尾。
例如:
char strl[20]="Hello";
char str2[10]=" Boy and Girl";
strncat(strl,str2,4);
只截取str2的前4位,所以str1中的內(nèi)容為:“Hello Boy”。
如果字符串長(zhǎng)度不足n,則補(bǔ)以空字符'\0'。例如:
char str1[20]="Hello";
char str2[10]=" Boy";
strncat(str1,str2,8);
str2中只有4個(gè)字符,不足8個(gè),則后面補(bǔ)空字符'\0'。
(4)實(shí)現(xiàn)strncat()函數(shù)功能的代碼為:
char str1[20]="Hello";
char str2[10]=" Boy";
int i,j,k,n;
printf("input n:\n");
scanf("%d",&n);
for(i=0;str1[i]!='\0';i++); /*i是str1的實(shí)際長(zhǎng)度*/
for(j=0;str2[j]!='\0';j++); /*j是str2的實(shí)際長(zhǎng)度*/
for(k=0;k<n;k++) /*將str2的內(nèi)存逐個(gè)賦值到str1中*/
{
strl[i+k]=str2[k];
}
if (n>-j) /*添加字符串結(jié)束標(biāo)志*/
strl[i+j]=0;
else
strl[i+k]=0;
puts(strl);
點(diǎn)擊加載更多評(píng)論>>