Создание массива (char) 1 дает ошибку на stdio.h

Код работает хорошо, в то время как длина массива> 1 но когда я обращаюсь к 1, это дает некоторые ошибки в stdio.h *

Вот мой код:

#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;
}

Вот ошибка в stdio.h:

__DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(
char*, gets_s,
char, _Buffer)

-3

Решение

Скорее всего, вы пытаетесь получить строковый литерал длиной более 2 символов, но не можете вставить его в буфер:

char sentence[2];

Увеличьте размер буфера до чего-то более приемлемого:

char sentence[255];

Как говорится в C ++, вы должны предпочесть станд :: строка в массив символов и станд :: GetLine в gets_s,

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]