制作数组 (char) 1 在 stdio.h 上给出错误

Making array (char) 1 gives error on stdio.h

我试图将用户输入的文本保存在 Char 数组中,但结果并不理想。我试过这个方法,但我认为它在 C++ 11 之后被删除了。

这是我的代码:

#include "stdafx.h"
#include <iostream>
using namespace std;

int main()
{
    char sentence[2];

    cout << "Enter your sentences : ";
    gets_s(sentence);

    cout << sentence << endl;

    system("PAUSE");
    return 0;
}

它给出了过载错误并且不起作用。

您可能正在尝试获取长度超过 2 个字符但无法将其插入您的缓冲区的字符串文字:

char sentence[2];

将缓冲区大小增加到更可接受的程度:

char sentence[255];

在 C++ 中,您应该更喜欢 std::string to character array and std::getline 而不是 gets_s