c语言字符串相加
① c语言中如何将两个字符串加在一起
可以使用string.h头文件中的strcat函数 char *a="123"; char *b = "abc"; strcat(a,b)即可,更多的字符串操作可以看一下string.h头文件中 有好多封好的, 如果不想用的话就可以自己写一个函数
函数内容:1.获取两个字符串的总长度,如total_len=len1+len2然后申请一个动态的数组大小为total_len 然后把字符串中的内容依次放进去就可以了。
② c语言编程!!计算字符串实现加法
int delete_sub_str(const char *str, const char *sub_str, char *result_str) {//认为 result_str长度足够
int size1=strlen(str),size2=strlen(sub_str);
size_t i,j,n=0,k;
int *pi;
if(size1<size2){//长度不够
pch=new char[size1+1];
for( i=0;i<=size1;i++)result_str[i]=str[i];
return 0;
}
pi=new int[size1/size2];//按最大可能分配pi
for(i=0;i<size1-size2;i++){//记录子窜起始下标
if(str[i]==sun_str[0]){//判断是否为子窜起始
for(j=1;j<size2;j++){
if(str[i+j]!=sub_str[j])break;
}
if(j==size2){
pi[n++]=i;
i=i+size2-1;
}
}//if
}//for
for(i=0,j=0,k=0;i<n;i++){//拷贝前n断非子窜部分
for(;j<pi[i];j++,k++)result_str[k]=str[j];
j=p[i]+size2;
}
for(;j<size1;j++,k++)result_str[k]=str[j];//拷贝最后一部分非子窜
result_str[k]='\0;//尾部+0
delete[]pi;
return n;
}//delete