Run ID 作者 问题 语言 测评结果 Time Memory 代码长度 提交时间
337 邓小龙 删除单词后缀 C++ Compile Error 0 MS 0 KB 467 2022-08-12 15:06:43

Tests(0/0):


Code:

#include <cstring> #include <iostream> using namespace std; int main() { string a[31]; //,aer="er",aly="ly",aing="ing",aend; getline(cin,a); int b=a.size(); string c=a.substr(b-2,2),d=a.substr(b-3,3);//substr(a,b)a是指开始位置 if(c[0]=='e'&&c[1]=='r') { a.erase(b-2,2); } if(c[0]=='l'&&c[1]=='y') { a.erase(b-2,2); } if(d[0]=='i'&&d[1]=='n'&&d[2]=='g') { a.erase(b-3,3); } cout<<a<<endl; return 0; }


Run Info:

Main.cc: In function 'int main()':
Main.cc:7:15: error: no matching function for call to 'getline(std::istream&, std::string [31])'
  getline(cin,a);
               ^
Main.cc:7:15: note: candidates are:
In file included from /usr/include/stdio.h:934:0,
                 from /usr/include/c++/4.8.2/cstdio:42,
                 from /usr/include/c++/4.8.2/ext/string_conversions.h:43,
                 from /usr/include/c++/4.8.2/bits/basic_string.h:2815,
                 from /usr/include/c++/4.8.2/string:52,
                 from /usr/include/c++/4.8.2/bits/locale_classes.h:40,
                 from /usr/include/c++/4.8.2/bits/ios_base.h:41,
                 from /usr/include/c++/4.8.2/ios:42,
                 from /usr/include/c++/4.8.2/ostream:38,
                 from /usr/include/c++/4.8.2/iostream:39,
                 from Main.cc:2:
/usr/include/bits/stdio.h:115:1: note: __ssize_t getline(char**, size_t*, FILE*)
 getline (char **__lineptr, size_t *__n, FILE *__stream)
 ^
/usr/include/bits/stdio.h:115:1: note:   candidate expects 3 arguments, 2 provided
In file included from /usr/include/c++/4.8.2/string:52:0,
                 from /usr/include/c++/4.8.2/bits/locale_classes.h:40,
                 from /usr/include/c++/4.8.2/bits/ios_base.h:41,
                 from /usr/include/c++/4.8.2/ios:42,
                 from /usr/include/c++/4.8.2/ostream:38,
                 from /usr/include/c++/4.8.2/iostream:39,
                 from Main.cc:2:
/usr/include/c++/4.8.2/bits/basic_string.h:2793:5: note: template std::basic_istream<_CharT, _Traits>& std::getline(std::basic_istream<_CharT, _Traits>&, std::basic_string<_CharT, _Traits, _Alloc>&)
     getline(basic_istream<_CharT, _Traits>& __is,
     ^
/usr/include/c++/4.8.2/bits/basic_string.h:2793:5: note:   template argument deduction/substitution failed:
Main.cc:7:15: note:   mismatched types 'std::basic_string<_CharT, _Traits, _Alloc>' and 'std::string [31] {aka std::basic_string [31]}'
  getline(cin,a);
               ^
In file included from /usr/include/c++/4.8.2/string:53:0,
                 from /usr/include/c++/4.8.2/bits/locale_classes.h:40,
                 from /usr/include/c++/4.8.2/bits/ios_base.h:41,
                 from /usr/include/c++/4.8.2/ios:42,
                 from /usr/include/c++/4.8.2/ostream:38,
                 from /usr/include/c++/4.8.2/iostream:39,
                 from Main.cc:2:
/usr/include/c++/4.8.2/bits/basic_string.tcc:1068:5: note: template std::basic_istream<_CharT, _Traits>& std::getline(std::basic_istream<_CharT, _Traits>&, std::basic_string<_CharT, _Traits, _Alloc>&, _CharT)
     getline(basic_istream<_CharT, _Traits>& __in,
     ^
/usr/include/c++/4.8.2/bits/basic_string.tcc:1068:5: note:   template argument deduction/substitution failed:
Main.cc:7:15: note:   mismatched types 'std::basic_string<_CharT, _Traits, _Alloc>' and 'std::string [31] {aka std::basic_string [31]}'
  getline(cin,a);
               ^
Main.cc:8:10: error: request for member 'size' in 'a', which is of non-class type 'std::string [31] {aka std::basic_string [31]}'
  int b=a.size();
          ^
Main.cc:9:13: error: request for member 'substr' in 'a', which is of non-class type 'std::string [31] {aka std::basic_string [31]}'
  string c=a.substr(b-2,2),d=a.substr(b-3,3);//substr(a,b)a是指开始位置
             ^
Main.cc:12:5: error: request for member 'erase' in 'a', which is of non-class type 'std::string [31] {aka std::basic_string [31]}'
   a.erase(b-2,2);
     ^
Main.cc:16:5: error: request for member 'erase' in 'a', which is of non-class type 'std::string [31] {aka std::basic_string [31]}'
   a.erase(b-2,2);
     ^
Main.cc:18:5: error: 'd' was not declared in this scope
  if(d[0]=='i'&&d[1]=='n'&&d[2]=='g')
     ^
Main.cc:20:5: error: request for member 'erase' in 'a', which is of non-class type 'std::string [31] {aka std::basic_string [31]}'
   a.erase(b-3,3);
     ^