鱼C论坛

 找回密码
 立即注册
查看: 2392|回复: 2

请问我的代码还有哪些错误吗?谢谢啊

[复制链接]
发表于 2019-7-27 08:33:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
题目描述
subStr是C++里面的计算一个字符串子串的函数,请实现subStr函数。
给定字符串s,子串的起始位置i和子串长度l, subStr返回从i开始的长度为l的字符串作为子串。
代码
  1. #include<iostream>
  2. using namespace std;
  3. #include<cstring>
  4. #include<iomanip>
  5. char p[1000];
  6. char *substr(char *s,int i,int l)
  7. {
  8.         int k = strlen(s),j = 0,M;
  9.        
  10.         if(i >= k || i < 0)
  11.         strcpy(p,"Not Valid!" );
  12.         else if(l >= (k-i))
  13.         {
  14.                 M = i;
  15.                 while(s[M] != '\0')
  16.                 {
  17.                         p[j] = s[M];
  18.                         j++;
  19.                         M++;
  20.                 }
  21.                 p[j] = '\0';
  22.         }
  23.         else
  24.         {
  25.                 M = i;
  26.                 while(j != l)
  27.                 {
  28.                         p[j] = s[M];
  29.                         j++;
  30.                         M++;
  31.                 }
  32.                 p[j] = '\0';
  33.         }
  34.         return p;
  35. }
  36. int main()
  37. {
  38.         char s[1000],a[1000];
  39.         int i,l;
  40.         cin >> s;
  41.         cin >> i >> l;
  42.         strcpy(a,substr(s,i,l));
  43.         cout << a << endl;
  44.         return 0;
  45. }
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-7-27 10:46:29 | 显示全部楼层
p[1000] 需要初始化
s[1000],a[1000] 需要初始化
比如
char p[1000] = {0};
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-1 21:46:09 | 显示全部楼层
Mondayisgood 发表于 2019-7-27 10:46
p[1000] 需要初始化
s[1000],a[1000] 需要初始化
比如

初始化后还是出现错误
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-4 19:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表