c ++中的字符串返回类型不返回输出

时间:2014-09-21 13:51:12

标签: c++

此代码是较大程序的一部分,我必须将一个字符串传递给一个函数并返回一个字符串,但我遇到了返回类型的问题。为什么以下代码不生成输出 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");}

2 个答案:

答案 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 
}