如何将将一组数组的部分字符赋值给另一个数组?


char a[10]="abcdefg";
char b[10];
如何使操作后可以将数组a[10]中的字符"bcd"赋值给b[10]这个数组呢?
最后得到
b[10]="bcd"
不要 b[0]=a[1],b[1]=a[2],b[2]=a[3] 样的
谢谢帮忙了

慕田峪7331174
浏览 217回答 2
2回答

HUH函数

可以自己定义一个函数来完成,举例如下://#include "stdafx.h"//If the vc++6.0, with this line.#include "stdio.h"/*本函数将源字符串s中第n个下标开始的m个字符拷入目标t并在最后补'\0'*/char *myfun(char *t,const char *s,int n,int m){char *p=t;if(m){//m为0时特殊处理返回NULLs+=n;while(*p++=*s++, --m && *s);*p='\0';return t;}return NULL;}int main(void){//测试一下char a[10];char *b="abcdefghi";printf("%s\n",myfun(a,b,1,3));return 0;}

暮色呼如

在标准库中有函数原型:char* strncpy (char*, const char*, size_t);使用参考:char a[10]="abcdefg";char b[10];memset(b,'\0',10); //初始化数组strncpy(b,a+1,3);printf("%s",b);
打开App,查看更多内容
随时随地看视频慕课网APP