| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1173 人关注过本帖
标题:为什么这样不能正常计算str3的长度。
只看楼主 加入收藏
lemonandtree
Rank: 2
等 级:论坛游民
帖 子:74
专家分:10
注 册:2017-10-5
结帖率:88.89%
收藏
已结贴  问题点数:20 回复次数:3 
为什么这样不能正常计算str3的长度。
程序代码:
#include<iostream>
using namespace std;
int lenstr(char str[20])
{
    int i=0;
    int sum=0;
    while(str[i]!='\0')
    {
        sum++;
        i++;
    }
    return sum+1;
}
void catstr( char str1[20],char str2[20])
{
    int t,i=0,j=0;
    t=lenstr(str1);
    char str3[20];
    while(str1[i]!='\0')
    {
        str3[i]=str1[i];
        i++;
    }
    str3[i]='\0';
    i=0;
    while(str2[i]!='\0')
    {
        str3[t-1]=str2[i];
        i++;
        t++;
    }
    str3[t]='\0';
    printf("%s",str3);
    cout<<lenstr(str3);
}

void main()
{
    char str1[20] ;
    char str2[20];int t;
    scanf("%s",str1);
    scanf("%s",str2);
    catstr(str1,str2);
}
,我想用这个程序把一个字符串连接到另一个字符串后面,然后输出原字符串和(连接在一起的字符串),并且计算和输出(连接在一起的字符串)的长度。可是cout<<lenstr(str3);没这句的时候可以输出(连接在一起的字符串),但加上这句不但输出的长度是错的,连输出的字符串也有问题。
搜索更多相关主题的帖子: 长度 int char 字符串 输出 
2017-11-24 20:10
lemonandtree
Rank: 2
等 级:论坛游民
帖 子:74
专家分:10
注 册:2017-10-5
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
2017-11-24 21:29
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:20 
str3[t]='\0' 改为 str3[t-1]='\0' 试试
手机上回复的,不对再继续
2017-11-24 23:12
lemonandtree
Rank: 2
等 级:论坛游民
帖 子:74
专家分:10
注 册:2017-10-5
收藏
得分:0 
真的是这样,我找了一晚上都没发现,真是太感谢您 了!
2017-11-25 08:47
快速回复:为什么这样不能正常计算str3的长度。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016048 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved