2012-01-25 3 views
0

Написать интеллектуальный редактор для имитации следующее:Интеллектуальный редактор программы в C

При вводе, если новое слово начинается с теми же буквами, что какой-то ранее набранного слова, выбор выбрать слово, вместо того, чтобы вводить целое должно быть дано. Это моя домашняя работа.

Мой алгоритм:

1: Read the input by everytime checking the _kbhit() macro. 
2: Store the word in an array 
3: On every further read, check the array if the word exists. 

Теперь проблема возникает !!!

Как я могу дать пользователю возможность выбрать слово или нет? И даже если задание будет успешным, как я узнаю, что пользователь решил выбрать это слово?

Я новичок в этом стиле программирования. Кто-нибудь знает, как это сделать, пожалуйста, помогите мне ...

+0

Вы слышали о [Ncurses] (http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/)? – zwol

+0

Не раньше этого. – Kameron

ответ

1

Это зависит от того, как вы читаете ввод и общаетесь с пользователем. Если это просто терминал, я предлагаю вам определить один ключ (вероятно, вкладку или esc), чтобы перейти на choosing state, а затем позволить ему (например) нажать номер (или клавиши).

Edit: некоторый код:

char c=getchar(); 
//some of your proccessing... 
if (c=='\t') { 
printf("\nPlease select option (0 to abort)\n"); 
char **op; 
int n,i; 
//calculate the options, assign them to op and n. 
for (i=0;i<n;i++) printf("%d: %s\n",i+1;op[i]); 
i=n+1; 
while (i<0 || i>n) scanf("%d",&i); 
if (i>0) { 
    //do whatever you need. remember to use i-1 
} 
} 
//reprint the whole string. 
+0

Да, это только терминал (обычный C). Можете ли вы опубликовать код? – Kameron

+0

Какой-то код был отправлен :) – asaelr

1

Различные вещи используют автоматическое завершение .... даже поиск в Google! Вам просто нужно выбрать метод, например, циклы вкладок через параметры, пробел выбирает эту опцию (или вводит). С помощью Esc, чтобы остановить попытку автозаполнения этой опции. В любом случае, до вас придумать схему. Возможно, попробуйте другие автозаполнения программ.

+0

Я, но как реализовать то же самое? Любой учебник или программа, чтобы сделать то же самое? – Kameron

+0

ну, вы не указали никаких подробностей о том, что вы реализуете в этом, но вам нужно: 1) разработать, если вы в слове 2), если вы в словах, показать параметры 3) разрешить пользователю выбирать параметры через некоторые нажатия клавиш какого-либо типа или если они вводят допустимый символ, добавьте его к существующему слову, а затем выполните поиск новых параметров. 4) позвольте им выбрать параметр, а затем вернуться к нормальному редактированию, где вы больше не в словах и не нужно показывать опции –

Смежные вопросы