此代码是较大程序的一部分,我必须将一个字符串传递给一个函数并返回一个字符串,但我遇到了返回类型的问题。为什么以下代码不生成输出 Trib 98
P.S新手在这里,希望代码发布格式正确
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <string>
using namespace std;
string Platin(string x)
{string ans = x + " 98" ;
return ans; }
int main()
{Platin("Trib");}
答案 0 :(得分:3)
在main中调用Platin会返回一个字符串,但是你从不对它做任何事情。将int main
更改为
int main()
{
cout << Platin("Trib") << endl;
}
或者,如果您不想输出返回值,并且只想保留它以供以后使用,则可以执行此操作
int main()
{
string functionOutput = Platin("Trib");
}
答案 1 :(得分:0)
你没有看到任何东西,因为你没有说出你想输出的东西。你的行:
Platin("Trib");
只返回一个在任何地方都没有使用的临时对象(字符串)(当然,它不是显示)。 实际上,您需要将创建的新字符串传递给standard output stream,如下所示:
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <string>
using namespace std;
string Platin(string x)
{string ans = x + " 98" ;
return ans; }
int main()
{
cout << Platin("Trib") << endl; // <- Instruct your program to output something
}