2 回答

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超4個(gè)贊
可以自己定義一個(gè)函數(shù)來完成,舉例如下:
//#include "stdafx.h"//If the vc++6.0, with this line.
#include "stdio.h"
/*本函數(shù)將源字符串s中第n個(gè)下標(biāo)開始的m個(gè)字符拷入目標(biāo)t并在最后補(bǔ)'\0'*/
char *myfun(char *t,const char *s,int n,int m){
char *p=t;
if(m){//m為0時(shí)特殊處理返回NULL
s+=n;
while(*p++=*s++, --m && *s);
*p='\0';
return t;
}
return NULL;
}
int main(void){//測(cè)試一下
char a[10];
char *b="abcdefghi";
printf("%s\n",myfun(a,b,1,3));
return 0;
}

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個(gè)贊
在標(biāo)準(zhǔn)庫中有函數(shù)原型:char* strncpy (char*, const char*, size_t);
使用參考:
char a[10]="abcdefg";
char b[10];
memset(b,'\0',10); //初始化數(shù)組
strncpy(b,a+1,3);
printf("%s",b);
- 2 回答
- 0 關(guān)注
- 252 瀏覽
添加回答
舉報(bào)