Описание тега bsearch

NoneBsearch is a function that performs a binary search. This function may exist in various programming languages, such as C. Use this tag ONLY for existing library functions named "bsearch". Use the [binary-search] tag instead for questions about binary search or self-written implementations.
2 ответа

Есть ли способ найти положение элемента при поиске массива char с помощью bsearch()

В первый раз, используя bsearch(), и мне было интересно, есть ли способ найти положение элемента или вернуть элемент?? У меня работает bsearch(), и он возвращает указатель, но из-за этого я не могу использовать его для печати элемента. void choose_f…
13 дек '13 в 16:16
1 ответ

bsearch() для массива строк в C

Я реализую код на C, чтобы скопировать строку в массив символов (строка), а затем выполнить поиск по нему. Но неожиданно bsearch возвращает false для результатов, которые должны быть правдой. Я предполагаю, что это как-то связано с тем, как я вставл…
13 июл '18 в 23:44
3 ответа

Указатель от целого числа без предупреждения о приведении при вызове lfind

Я пишу вектор на C. Функция CVectorSearch использует bsearch, если он отсортирован, и lfind, если он не отсортирован. Почему я получаю предупреждение "присваивание делает указатель из целого числа без приведения", когда я звоню lfind? Кажется, он от…
16 авг '09 в 01:04
1 ответ

Получение "ошибка: неверный инициализатор" при вызове bsearch

У меня есть структура: typedef struct DATA { char *key; char *parentKey; char *description; } DATA; И массив экземпляров: DATA *data_array = NULL; // the global data array int m_arrayLength = 0; // Keeps track of the number of elements used Как толь…
22 ноя '13 в 10:49
1 ответ

bsearch() - поиск строки в массиве структур

У меня есть структура, которая выглядит так: typedef struct dictionary_t{ char word[30]; int foo; int bar; } dictionary_t; Который образует упорядоченный массив: dictionary_t dictionary[100]; Я хотел бы найти в этом массиве строку с помощью bsearch(…
09 май '17 в 14:32
1 ответ

bsearch для массива, отсортированного по убыванию

У меня есть массив, который отсортирован в порядке убывания, без дубликатов. Могу ли я выполнить бинарный поиск с помощью функции bsearch в libc? Для этого нужно изменить функцию сравнения, которую я передаю ей? Спасибо
09 июн '12 в 17:01
0 ответов

Поиск динамически размещенного двумерного массива в C

Я пишу словарь на C, загружая каждое из слов словаря в динамически распределенный массив. Для поиска в массиве я пытаюсь использовать stdlib bsearch функционировать, но не может заставить его работать. Я исследовал функцию и наткнулся на C++ справоч…
11 мар '18 в 13:43
1 ответ

Разрешение перегрузки для внешних версий "C" и "C++" qsort()/bsearch()

В C++ есть две версии qsort() предоставляется стандартной библиотекой: extern "C" void qsort(void* base, size_t nmemb, size_t size, int (*compar)(const void*, const void*)); extern "C++" void qsort(void* base, size_t nmemb, size_t size, int (*compar…
22 фев '14 в 13:57
2 ответа

Поиск и диапазон поиска?

bsearch довольно хорош для прямого поиска, но что мне следует использовать, если мне нужен, например, диапазон поиска? Обновить например, если я хочу найти диапазон значений между a и b ( a >= x Обновить Диапазон значений может быть не равным. поэто…
24 мар '11 в 18:59
1 ответ

Не могу найти bsearch(vc2008), даже включить заголовочный файл

Я поддерживаю старый проект и столкнулся с некоторыми ошибками компоновщика. Сообщение об ошибке:error LNK2019: unresolved external symbol __imp__bsearch referenced in function "bool __cdecl is_sync_host Насколько я знаю, bsearch Функция включена в …
27 май '14 в 09:31
2 ответа

Как использовать функцию-член с std::bsearch

У меня есть класс C++, но я также использую какой-то низкий уровень C, и мне нужно использовать bsearch функция. Последний аргумент bsearch является функцией сравнения, и я хочу реализовать указанную функцию таким образом, чтобы она могла получить д…
10 окт '17 в 07:42
0 ответов

Поиск в C для соответствия в пределах диапазона элементов вместо определенного элемента

Я пытаюсь сделать двоичный поиск массива структур, которые содержат шестнадцатеричные адреса. Каждая структура содержит несколько адресов, и когда я даю входной адрес, я хочу найти структуру, которая имеет диапазон, который охватывает мой входной ад…
03 мар '13 в 22:53
2 ответа

Нечетная проблема с нулевым указателем

Я делаю код практики с использованием языка Си. Как показано ниже коды, #include <stdio.h> #include <stdlib.h> #include <string.h> #define _CRT_SECURE_NO_WARNINGS int ACDSort(const void *p1, const void *p2); int Compare(const void …
29 сен '16 в 05:59
1 ответ

bsearch смена ключа в цикле

Есть ли способ сделать что-то подобное? int key=50; int loop=5; int array[10]={...}; int* Ptr=NULL; qsort(array, 10, sizeof(int), compareints); while(loop>0){ Ptr=(int*)bsearch(&key,array,10,sizeof(int),compareints); if(Ptr!=NULL){ printf("fo…
09 сен '13 в 13:17
3 ответа

Как реализована функция bsearch() в стандартной библиотеке C?

Кто-нибудь знает, как реализована стандартная функция двоичного поиска? Это прототип. void * bsearch (const void*, const void*, size_t, size_t, int (*) (const void *, const void *) ); Мне действительно любопытно, как они использовали пустые указател…
03 янв '10 в 03:01
1 ответ

bsearch не ищет весь переданный ему массив

У меня проблемы с этим исследователем. Я уверен, что я выделил проблему в число байтов параметра, который принимает bsearch. Массив данных - это словарь скрэббл, и я на 100% уверен, что весь словарь загружен в память, но когда я использую bsearch дл…
11 апр '15 в 00:58
2 ответа

bsearch() не находит мой предмет

Может кто-нибудь сказать мне, почему bsearch() в следующем коде не находит пункт "getwidth" в списке? Я пробовал несколько компиляторов, и они не работают ни с одним из них, поэтому это должно быть ошибкой в ​​моем коде. Тем не менее, я действительн…
08 авг '13 в 12:22
1 ответ

bsearch и Visual Studio 2008

Я использую библиотеку регулярных выражений, которая вызывает стандартную функцию bsearch(), При использовании VS2008 я должен включить дополнительный заголовок для этой функции, которая будет объявлена ​​(<search.h>). Но когда я связываю, это…
28 дек '15 в 09:12
3 ответа

Обратное выражение в блоке bsearch не работает

ary = [1, 4, 6, 9] (0...ary.size).bsearch { |i| ary[i] - 1 } # => nil 1 - ary[i] # => 0 Когда код написан в форме ary[i] - 1 который не работает, как ожидалось. То, что я пытаюсь сделать, это найти индекс числа 1 в массиве. Но 1 - ary[i] может…
14 дек '15 в 16:23
1 ответ

Определение индекса от bsearch и lfind?

Я пытаюсь получить индекс элемента в массиве после того, как lfind и bsearch возвращают указатель на найденный элемент. У меня есть это до сих пор: (char *) (found - cv->baseAddress); где найдено - адрес того, что функции нашли, а базовый адрес -…
25 апр '13 в 09:53