| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 487 人关注过本帖
标题:请论坛中的c++高手帮忙看下这程序 谢谢
只看楼主 加入收藏
hujian1989
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-10-18
结帖率:100%
收藏
已结贴  问题点数:0 回复次数:2 
请论坛中的c++高手帮忙看下这程序 谢谢
编写一函数,其功能是从已知字符串中指定位置p开始截取一个长度为len的子串。
 我的编的程序如下   运行后出现乱码 帮忙看下  谢谢
#include<iostream>
 #include<string>
 #include<conio.h>
 #define N 80
 using namespace std;
 char *subcut(char *a,int p,int len);
 char main()
 {
 char a[N+1],*ps;
 char *subcut(char*,int,int);
 int p,len;
 cout<<"请输入一个字符串:"<<endl;
 gets(a);
 cout<<"请输入指定位子和长度:"<<endl;
 cin>>p>>len;
 ps=subcut(a,p,len);
 cout<<ps;
 _getch();
 return 0;
 }
 char *subcut(char *a,int p,int len)
 {
 char substr[N+1];
 int i;
 char *ps;
 ps=substr;
 if(p<1||p>strlen(a)||len<1)
   cout<<"data error";
 else
   for(i=1,a=a+p-1;i<=len && *a!='\0';i++)
    *ps++=*a++;
 *ps='\0';
 return substr;
 }
搜索更多相关主题的帖子: include return 字符串 
2011-10-18 22:00
lintaoyn
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:606
专家分:2499
注 册:2009-4-8
收藏
得分:10 
程序代码:
#include<iostream>
#include<string>
#include<conio.h>
#define N 80
using namespace std;
char *subcut(char *a,int p,int len);
char main()
{
    char a[N+1],*ps;
    char *subcut(char*,int,int);
    int p,len;
    cout<<"请输入一个字符串:"<<endl;
    gets(a);
    cout<<"请输入指定位子和长度:"<<endl;
    cin>>p>>len;
    ps=subcut(a,p,len);
    cout<<ps;
    delete ps;
    _getch();
    return 0;
}
char *subcut(char *a,int p,int len)
{
    char *substr = new char [N+1];
    int i;
    char *ps;
    ps=substr;
    if(p<1||p>strlen(a)||len<1)
        cout<<"data error";
    else
        for(i=1,a=a+p-1;i<=len && *a!='\0';i++)
            *ps++=*a++;
    *ps='\0';
    return substr;
}
注意编译器给你报的警告,你返回了一个临时对象,出现乱码是正常的。

迭代的是人,递归的是神。
2011-10-18 23:14
hujian1989
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-10-18
收藏
得分:0 
非常感谢  这位兄弟的帮助  以后还请多多关照  呵呵。。。。
2011-10-19 08:34
快速回复:请论坛中的c++高手帮忙看下这程序 谢谢
数据加载中...
 
   



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

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