Я пишу программу, которая требует, чтобы я ввел серию символов, которые загружаются в массив символов для последующего использования. Код, который я пытаюсь заставить работать, выглядит так:
char temp = getchar();
while(temp != '\n'){//input char into temp until '\n'
input[strlen(input)] = temp;//adds temp to end of input
temp = getchar();
}
но когда я добираюсь до этой строки в программе, я получаю «Ошибка сегментации (сброс ядра)» и происходит сбой. Когда я заменяю \n другим символом, например, %
char temp = getchar();
while(temp != '%'){//input char into temp until '\n'
input[strlen(input)] = temp;//adds temp to end of input
temp = getchar();
}
тогда он работает нормально, но я хочу использовать новую строку, а не %. Я просмотрел несколько руководств, и они сказали, что это как вводить до тех пор, пока не будет нажата клавиша ввода, поэтому я не уверен, в чем проблема. Заранее спасибо.
input
и как его инициализировать? - person Kerrek SB   schedule 04.02.2012