C程序两个字符串数组如何相互赋值?

C程序两个字符串数组如何相互赋值?,第1张

可以在定义的时候直接赋,就是这样:
char stu[]="good",edu[]="good";
或者是在后面用循环一个一个的赋,就是这样:
char stu[],edu[]="good";int i;
for (i=0;i<4;i++)
{
stu[i]=edu[i];
}
在定义后再给字符数组赋值的话必须用循环了,
有一个库函数可以执行字符串拷贝,我记得是strcpy(a[],b[])也是可以用的,可以把一个字符串的内容完全拷贝到另一个字符串那里

#include <stdioh>
#include <stringh>
int main ()
{
    char str1[10],str2[5],p,i;//这里用str1接收拼接后的字符串,确保str1大小够放!! 注意要留1位保存结束符'\0'
    strcpy(str1,"abcd");strcpy(str2,"efgh");
    printf("原字符串分别为:%s   %s\n\n",str1,str2);
    strcat(str1,str2);
    printf("用strcat拼接后字符串:%s\n\n",str1);
    strcpy(str1,"abcd");strcpy(str2,"efgh");
    p=&str1[strlen(str1)];
    for(i=0;i<strlen(str2);i++)
        p++=str2[i];
    p=0;
    printf("不用strcat拼接后字符串:%s",str1);
    return 0;
}

main()
{
char a[100],b[100];
int len,i=0;
scanf("%s",a);
scanf("%s",b);
for(len=0;a[len]!='\0';len++);
for(a[len]=b[i];b[i]!='\0';a[len++]=b[i++]);
printf("%s",a);
getch();
}
如果运用函数调用可以这样:
user_strlen(char a,char b)
{
while((a++)!=0);
a-=1;
while((a++)=(b++));
}
main()
{
char a[100],b[100];
scanf("%s",a);
scanf("%s",b);
user_strlen(a,b);
printf("%s",a);
getch();
}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13401855.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-29
下一篇 2023-07-29

发表评论

登录后才能评论

评论列表(0条)

保存