Я пробовал найти ответ для своей проблемы, но я не могу найти его.Eclipse CDT и getch()
Вот мой очень простой тестовый код:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main(void) {
char ch;
printf("Enter character: ");
ch = getch();
printf("%c", ch);
return 0;
}
Когда я пытаюсь запустить это в Eclipse, я не могу даже получить первый Printf линии, чтобы показать, и выполнение каких-либо нажатий клавиш ничего не делает.
Я также пробовал делать fflush (stdout) и fflush (stdin), но программа не так, как я хочу. Если я попробую это на Visual Studio, он отлично работает.
У кого-нибудь есть идея, почему? Благодарю.
У вас есть возможность скомпилировать CDT? Какой компилятор вы используете? Также обратите внимание, что conio.h не является частью стандартной библиотеки C, поэтому компиляция с чем-либо еще, чем компилятор MS, скорее всего, не удастся. – Cilyan
Мне удалось скомпилировать CDT. Мой компилятор работает. Я изначально не имел conio.h, не работал. Бросил conio.h, потому что онлайн-источники говорят, что getch() является частью этой библиотеки, но он не работает, как я хочу, в консоли eclipse. Как раз сейчас я отлаживал его с помощью консоли Windows, и он работает, как я хочу. Просто не будет работать правильно в консоли eclipse. –
Вместо этого вы должны использовать 'getchar'. Я сомневаюсь, что вы выбрали 'conio.h', как будто это принесет пользу. https://stackoverflow.com/questions/9180001/what-is-the-difference-between-getch-and-getchar – Cilyan