Я и многие из нас допускаем простые ошибки. Используйте автоматизированные инструменты, которые вам нужны, чтобы повысить эффективность кодирования.
Экономьте время, включайте все предупреждения компилятора или используйте лучший компилятор.
предупреждение: управление достигает конца недействительной функции [-Wreturn-type]
blockquote>
searchItem()
необходимо вернуть значение.int searchItem(TreeNode *root, char *word) { if (root == NULL) { return 0; } int comp = strcmp(word, root->word); if (comp == 0) { return root->freq; } else { // searchItem(comp < 0 ? root->left : root->right, word); return searchItem(comp < 0 ? root->left : root->right, word); } }
Другие проблемы могут существовать.
У Вас есть dhtmlCombo, с помощью ajax для получения данных при заполнении поля ввода.
dhtmlxCombo является полем комбинированного списка JavaScript перекрестного браузера с функцией автоматического заполнения.
Это расширяет основную selectbox функциональность для соответствия требованиям самых актуальных веб-приложений.
dhtmlxCombo может быть преобразован из существующего ВЫБОРА HTML или заполнен с JavaScript. Поддерживая Ajax, это может также получить значения списка от источника данных сервера динамично.
autocompleter использование Prototype и Scriptaculous работает хорошо в этой ситуации.
В HTML 5 существует стандартное поле комбинированного списка.
В настоящее время только Opera поддерживает его, но если Вы, оказывается, путешественник во времени или запись приложения только для Opera, это - хорошее решение :)
<input type=text list=listid>
<datalist id=listid>
<select><option>1<option>2</select>
</datalist>
Проверьте плагин Автоматического заполнения jQuery, это просто в использовании, только необходимо генерировать сторону сервера ответа JSON.
Посмотрите это демонстрации.
Просто примечание: Если избранное поле текущее сфокусированный, можно ввести на клавиатуре, и это возьмет Вас к выбору, начинающемуся с того текста, таким образом введение "кругозора" в выпадающий штат США выбрало бы опцию "Kentucky" автоматически.