Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
显示默认值 使用C++,用户可以用CIN语句给默认值,然后让它们返回它们想要更改的空间吗?例如:我给用户一个更改字符串名称的选项,我将名称输出到屏幕上:“John Doe”,他们可以退格将名称更改为“John Smith”。_C++_Iostream_Default Value_Cin - Fatal编程技术网

显示默认值 使用C++,用户可以用CIN语句给默认值,然后让它们返回它们想要更改的空间吗?例如:我给用户一个更改字符串名称的选项,我将名称输出到屏幕上:“John Doe”,他们可以退格将名称更改为“John Smith”。

显示默认值 使用C++,用户可以用CIN语句给默认值,然后让它们返回它们想要更改的空间吗?例如:我给用户一个更改字符串名称的选项,我将名称输出到屏幕上:“John Doe”,他们可以退格将名称更改为“John Smith”。,c++,iostream,default-value,cin,C++,Iostream,Default Value,Cin,对于类似的功能以及更多功能,请查看或查看其一个工作类。它基本上是一个应用程序库,支持命令行编辑,具有熟悉的功能,如向上箭头重复以前的命令,编辑以前的命令,是的,您可以自定义呈现给用户的文本,然后用户可以使用shell中使用的相同按键对其进行编辑。对于类似的功能以及更多功能,请查看或查看其一个workalikes。它基本上是一个应用程序库,支持命令行编辑,具有熟悉的功能,如向上箭头重复以前的命令,编辑以前的命令,是的,您可以自定义呈现给用户的文本,然后用户可以使用shell中使用的相同击键对其进行

对于类似的功能以及更多功能,请查看或查看其一个工作类。它基本上是一个应用程序库,支持命令行编辑,具有熟悉的功能,如向上箭头重复以前的命令,编辑以前的命令,是的,您可以自定义呈现给用户的文本,然后用户可以使用shell中使用的相同按键对其进行编辑。

对于类似的功能以及更多功能,请查看或查看其一个workalikes。它基本上是一个应用程序库,支持命令行编辑,具有熟悉的功能,如向上箭头重复以前的命令,编辑以前的命令,是的,您可以自定义呈现给用户的文本,然后用户可以使用shell中使用的相同击键对其进行编辑。

我可能疯了,但这里有一个简单的Windows解决方案,可以在Visual Studio 2012 Update 1上运行。它模拟您想要输入的字符,这些字符应该保留在输入缓冲区中,直到它们准备好被读取,然后读取输入,等待换行

#include <iostream>
#include <string>
#include <windows.h>

void InsertDefaultName(const std::string &def) {
    HWND hwnd = GetConsoleWindow();
    for (char c : def) {
        SendMessage(hwnd, WM_CHAR, c, 0);
    }
}

int main() {
    std::cout << "Enter name: ";
    std::string name;

    InsertDefaultName("John Doe");
    std::getline(std::cin, name);

    std::cout << "You entered " << name << '\n';
}
#包括
#包括
#包括
void InsertDefaultName(const std::string&def){
HWND HWND=GetConsoleWindow();
用于(字符c:def){
SendMessage(hwnd,WM_CHAR,c,0);
}
}
int main(){

std::cout我可能会发疯,但这里有一个在Visual Studio 2012 Update 1上工作的普通Windows解决方案。它模拟您想要输入的字符,应该将它们保留在输入缓冲区中,直到它们准备好读取,然后读取输入,等待换行符

#include <iostream>
#include <string>
#include <windows.h>

void InsertDefaultName(const std::string &def) {
    HWND hwnd = GetConsoleWindow();
    for (char c : def) {
        SendMessage(hwnd, WM_CHAR, c, 0);
    }
}

int main() {
    std::cout << "Enter name: ";
    std::string name;

    InsertDefaultName("John Doe");
    std::getline(std::cin, name);

    std::cout << "You entered " << name << '\n';
}
#包括
#包括
#包括
void InsertDefaultName(const std::string&def){
HWND HWND=GetConsoleWindow();
用于(字符c:def){
SendMessage(hwnd,WM_CHAR,c,0);
}
}
int main(){
标准::cout