У меня есть следующий код, который хранит строковый ввод от пользователя N раз в многомерном массиве. А затем распечатайте второй элемент.Сохранение и извлечение строк в многомерном массиве
main()
{
// Array to store 10 strings, 20 characters long.
char strStorage[10][20];
printf("\nEnter how many strings: ");
scanf("%d" , &num);
fflush(stdin);
for (count = 0 ; count < num ; count++)
{
printf("Enter a string: ");
gets(strStorage[count]);
fflush(stdin);
}
printf("%s", strStorage[2]);
Последняя строка выводит мусор. Пользовательский вход не отображается внутри мусора, следовательно, мой доступ к элементу неверен или мое хранилище неверно. Может ли кто-нибудь помочь мне в отношении того, в чем проблема?
Заранее спасибо ...
Что делать, если пользователь вводит более 19 символов? http://stackoverflow.com/questions/1694036/why-is-the-gets-function-is-dangerous-why-should-not-be-used – hmjd
'fflush (stdin);' undefined behavior! –
Каков ваш образец ввода? – Rohan