使用函数打印星号
Using function to print asteriks
#include <iostream>
using namespace std;
int asteriks (int sides,int row=1,int col=1)
{
for(row;row<=sides;row++)
{
for(col;col<=sides;col++)
cout<<"*";
cout<<endl;
}
return asteriks;
}
int main()
{
int side;
cout<<"Enter a number to print out square asteriks. Ex: If a number is 5, it will print 5x5 total of 25 asteriks in square. :"<<endl;
cin>>side;
cout<<asteriks(side);
// ...
这是我在C++课上必须做的作业之一。我在"return asteriks"中得到一个错误,它说返回值类型与函数类型不匹配。
该程序的目标是通过用户使用功能输入一面(例如5,它将打印5x5(来打印方形星号。
让我们检查您的代码:
cout<<asteriks(side); // this implies that asteriks function is returning a value
int asteriks (int sides,int row=1,int col=1) // this implies this function return an integer
return asteriks; // this implies that asteriks is the integer you return from the function, but asteriks is not a variable
因此,您必须将函数类型更改为String,并返回一个String istead以在函数内执行cout
,或者您希望asteriks
函数的类型为void,不返回,并像这样调用它:asteriks(side);
删除
return asteriks;
将函数返回值更改为void并更改
void asteriks (int sides,int row=1,int col=1)
并更改
cout<<asteriks(side);
对于
asteriks(side);
你正在调用一个函数来打印正方形,返回一些东西是没有意义的。
代码的问题是,您试图返回asteriks,而asteriks不是"整数类型"。
你可以用一种更短的方式来完成,比如:
#include <iostream>
#include <string>
using namespace std;
int main() {
int asterisks;
cout<<"Enter a number to print out square asteriks. Ex: If a number is 5, it will print 5x5 total of 25 asteriks in square. :"<<endl;
cin >> asterisks;
for(int i = 0; i < asterisks; i++) cout << string(asterisks, '*') << endl;
return 0;
}
相关文章:
- 回溯C++不打印函数,因此文件
- 重写打印函数而不是覆盖基类
- 从模板创建通用打印函数,以打印基元数据类型变量的值
- 打印传递给打印函数的矢量
- 如何使用重新定义的打印函数打印Lua表?
- 调用和打印函数,在 C++ 中返回数组
- Lua C API 自定义打印函数,在字符串中传递空格时不调用
- C++二叉树打印函数实现
- 如何从主 C++ 向模板类中的方法发送打印函数
- 如果我不打印函数参数的值,则将其转换为等于零
- 打印函数模板的内容进行类指针
- C++打印函数的结果?
- 打印 C++ 函数
- 编写一个通用打印函数来打印数组
- 用于打印函数进入和退出跟踪的宏
- 每当尝试打印函数变量时,C++ cout 错误
- GDB:当没有可用的名称符号时,如何打印函数参数值
- 在lua中重新定义打印函数时出现问题
- 打印函数会返回一个意外值,原因是什么
- IntStack的C++递归打印函数