c语言风格的字符串插入函数
c语言没有字符串插入函数,我模仿c++的字符串插入函数写了一个,欢迎拍砖!
定义:strnrt(char *pos,const char *str,size_t n);
参数说明:第一个参数pos是要插入的位置。
第二个参数str是要插入的字符串
第三个参数n是要插入的字符串个数,因为有时候不想把整个str插入,只想插入一部分,这个参数就有用了。全插入就strlen(str)了。
代码:
void strnrt(char *pos,const char *str,size_t n){
memmove(pos+n,pos,strlen(pos)+1);
strncpy(pos,str,n);
}
利用该函数解决773题
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
char s1[20],s2[20];
void strnrt(char *pos,const char *str,size_t n){
memmove(pos+n,pos,strlen(pos)+1);
strncpy(pos,str,n);
}
int main(){
while(~scanf("%s%s",s1,s2)){
char *p=max_element(s1,s1+strlen(s1));
strnrt(p+1,s2,3);
puts(s1);
}
return 0;
}