我正在尝试编写为字符串创建 squere 的程序。Squere 必须大于 string.length()。如果有单词“C++”,我需要 2x2 数组来填充它。所以我写了代码
#include <cmath>
#include <cstdlib>
#include <iostream>
#include <string>
using namespace std;
int pole(int &a,const int* l);
int main(){
string code;
cin >> code;
int wall=1;
pole(wall,code.length());
cout << wall;
system("PAUSE");
return 0;
}
int pole(int &a,const int* l){
if (a*a > l) return a;
else {
a+=1;
pole(a,l);
}
}
我敢打赌,使用具有重复性的指针可以节省大量内存,但我无法编译它。我正在尝试理解编译器错误,但对我来说很难 2 ;/
这是编译器错误列表
> in main()
11 25 Error] invalid initialization of non-const reference of type 'int&' from an rvalue of type 'int (*)(int&, const int*)'
6 5> [Error] in passing argument 1 of 'int pole(int&, const int*)'
in pole() 17 12
>[Error] ISO C++ forbids comparison between pointer and
> integer [-fpermissive]