在一个子符串的指定位置插入一段字符串是经常要用到的操作。这个操作没有对应的库函数,必须要自定义一个函数,但实际上是库函数的拼接。
把字符串str插入到arr的pos位置,也就是插入后arr[pos]==str[0]。
#include <stdio.h>
#include <string.h>
void insert(int pos,char str[],char arr[])
{
char s[100];//大小根据实际需要
strncpy(s,arr,pos);//先把arr的前pos-1个字符复制到s中,不包括arr[pos]
s[pos]='\0';
strcat(s,str);//把str拼接到s后面
strcat(s,(arr+pos));//arr+pos是关键,也就是从arr[pos]开始拼接到s后面
strcpy(arr,s);
}