使用字符串在屏幕上显示的用户输入

时间:2016-02-09 01:40:04

标签: c++

我正在编写一个基本程序来提示用户输入文本,然后在屏幕上显示用户输入。我使用字符串接受用户输入,但不知道要在字符串UserInput函数中添加什么代码?到目前为止,我的程序提示用户输入文本,但它不会显示在屏幕上。我该怎么做才能使程序运作?



//Simple loop
#include <iostream>
#include <string>

using namespace std;

string UserInput(string);

int main(void)
{
	
	string input;

    // Enter user input
	cout << "Enter your input: ";
	cin >> input;

	// Display user input
    cout << "You entered: " << UserInput(input) << endl;
    return 0;
	/*while (number <= 5)
	{
		cout << "Enter your input: ";
		number++;
	}*/
}

string UserInput(string)
{
	//string Input = 
	return 0;
}
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:0)

只要您不想修改UserInput-Function中的字符串,只需使用

即可
cout << "You entered: " << input << endl;

如果要修改它,请按以下方式编写函数:

string UserInput(string s)
{
s = "whatever"; //modify s as you like
return s;
}

在C ++中,函数参数需要一个类型(此处为string)和一个名称(此处为s)才能使用/修改它们。

答案 1 :(得分:0)

你的意图令人困惑,这个功能:

string UserInput(string)
{
    //string Input = 
    return 0;
}

没有做任何事情。您正在执行从intstring的错误广播,这会导致运行时错误:http://ideone.com/vzoQcw

玩这个:

int main(void)
{

    string input;

    // Enter user input
    cout << "Enter your input: ";
    cin >> input;

    // Display user input
    cout << "You entered: " << input << endl;
    return 0;
}

如果要使用函数用户输入对字符串进行一些一致的修改,则需要修改字符串并返回。例如

// Example function to uppercase the string. 
string UserInput(string input) {
    for (int i = 0; i < input.length(); ++i) {
         input[i] = toupper(input[i]);
    }
    return input;
}

Here is a live example for you to play with.