qhnw.net
当前位置:首页 >> 如何将两个字符串合并 >>

如何将两个字符串合并

可以使用string.h头文件中的strcat函数 char *a="123"; char *b = "abc"; strcat(a,b)即可,更多的字符串操作可以看一下string.h头文件中 有好多封好的, 如果不想用的话就可以自己写一个函数 函数内容:1.获取两个字符串的总长度,如total_len=len1+len2然后申请一个动态的数组大小为total_len 然后把字符串中的内容依次放进去就可以了.

#include <stdio.h> #include <string.h> int main(int argc, char *argv[]) { char name[][20]= {"Lily","Xiaoming","Scott","Max"}; char name2[]= "James"; int i; strcpy(name[3],name2); for (i=0;i<4;i++) printf("%s\n",name[i]); return 0; }

这要看类型,如果用的是C++里面的string类,那么只需要用上重载符号 + 就行了:例如:string s1="12345890",s2="abcdedg";s1+=s2;//把s2连接在s1尾部cout<<s1

我这个最短,呵呵 void mystrcat(char *s1,char *s2) //将s2接在s1后面 { while(*s1++); s1--; while(*s1++=*s2++); } 或者你直接用库函数strcat(char *s1,char *s2)

int main(int argc, const char * argv[]) { //第5个字符处分开成两个字符串c语言 char a[100] = "abcdefghijklmn"; char b[100]; strncpy(b, a, 5); int i; for (i = 0; i a[i] = a[i+5]; } puts(b); puts(a); return 0; }

sprintf就可以.sprintf(NAME, "%s%s%s", name1, name2, name3);

主要代码: char s[1000]; int i,j=0; scanf("%s",s); for(i=0;i<1000;i++) { if(s[i]=='*') //for循环查找字符*的数量 j++;//利用变量j计数 }

方法一,使用+运算符: #include <string.h> string str; string str2 = "123", str3 = "456"; str = str2 + str3 cout<<str<<endl;方法二,使用sprintf函数: #include <stdio.h> char str[200]; char str2[] = "123", str3[] = "456"; sprintf(str,"%s%s",str2,str3); cout<<str<<endl;

void xstrcat(str1,str2){int i,len1;for(i=0;str1[i]!='\0';i++);len1=i;for(i=0;str2[i]!='\0';i++) str1[i+len1]=str2[i];}

#include<stdio.h> int main() { char s1[100],s2[100],s3[200]; int i,j; gets(s1); gets(s2); for(i=j=0;s1[i];) s3[j++]=s1[i++]; for(i=0;s2[i];) s3[j++]=s2[i++]; s3[j]='\0'; puts(s3); getch(); return 0; }

网站首页 | 网站地图
All rights reserved Powered by www.qhnw.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com