Для моего домашнего задания мне нужно реализовать алгоритм Хорнера для преобразования между базами.
Мне сказали использовать getchar()
для этого задания. Но у меня проблема: когда я нажимаю Enter, программа не завершается и просто принимает больше символов.
Пример:
bryce> ./pa1
Enter the fromRadix:16
Enter the toRadix:2
abc
abc
^C
bryce>
Код:
int readRadixA(int radixA)
{
char myChar = getchar();
int result = 0;
int run = 0;
while(myChar != EOF)
{
if(myChar == "\n")
break;
Horners();
myChar = getchar();
}
return result;
}
Я не прошу помощи в реализации Horners; Прошу помощи, чтобы правильно завершить getchar()
.
^D
, символ EOF в оболочках Unix? :) В Windows в этой роли может работать^Z
. Вы также можете закончить свою программу на двух\n
подряд (то есть набрав пустую строку). - person 9000   schedule 04.02.2012getchar
возвращает целое число. Не char, а int.myChar
должен бытьint
. - person Mat   schedule 04.02.2012