问题标签 [bsearch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 将 bsearch 与字符串数组一起使用时遇到问题
尝试在 C 中的字符串数组上使用 c 内置 bsearch 时,我遇到了一些令人困惑的行为。这是代码。我知道您可以使用内置的 strcmp 来搜索字符串数组,但我将 myStrCmp 包括在内以用于调试目的,因为我不知道它为什么不起作用。
这是调用此函数以查找 Alabama 时的一些输出。
如您所见,bsearch 在其搜索过程中访问的位置应该具有有效的字符串(正如在调用 bsearch 之前刚刚检查过的那样),但是如果您尝试在该位置打印 char *,则输出是垃圾。谁能看到我的错误?顺便说一句,当我调用 bsearch 并将最终参数设置为:
谢谢!
c - 从 bsearch 和 lfind 确定索引?
我试图在 lfind 和 bsearch 返回指向它找到的元素的指针之后获取数组中元素的索引。到目前为止我有这个:
where found 是函数找到的地址,基地址是元素 0 的地址。但是,编译器给了我这个错误:
cvector.c:150:28: 警告: 'void *' 类型的指针用于减法 cvector.c:150:4: 警告: return 从指针中生成整数而不进行强制转换
我该怎么办?
c - bsearch() 找不到我的项目
谁能告诉我为什么下面代码中的 bsearch() 在列表中找不到项目“getwidth”?我尝试了几个编译器,但它们都不适用,所以它一定是我的代码中的一个错误。但是,我真的不明白那里有什么问题。传递给 bsearch() 的回调总是返回 != 0 但仍然只调用 5 次,然后 bsearch() 返回 NULL,尽管它没有遍历所有项目。这是为什么?
这是代码:
这是该程序生成的输出:
我真的不明白为什么它不起作用,尽管它实际上只有几行。有人可以对这种奇怪的行为有所了解吗?谢谢!
c - bsearch 在循环中更改键
反正有做这样的事情吗?
问题是 key 增加bsearch
了,但仍然搜索数字 50。我猜是因为 key 参数bsearch
是 a constant pointer
。我知道如果在搜索之前将所有键都存储在数组中,它会起作用。但是,这不适合我的应用程序。任何帮助,将不胜感激。
c - qsort 和 bsearch 函数...“指针”
我想知道,当我们创建函数时
qsort
我们只是将其名称传递给and的参数之一bsearch
,这些函数如何识别所说的基本上随机的词(因为我们从未明确声明它是函数指针,而是实际函数)并将其用作参数?qsort
在and的函数声明中是否有显式转换bsearch
?
c - 调用 bsearch 时出现“错误:无效的初始化程序”
我有一个结构:
以及一组实例:
填充数组后,我将使用它对其进行排序qsort
这正在按预期工作。我正在尝试实现一种在数组中搜索特定项目的方法,这就是我卡住的地方
gcc
编译器正在返回消息:
p_CONNECT.c:在函数“FindDataByKey”中:
p_CONNECT.c:87:错误:初始化程序无效
make:最后一条命令的错误代码为 1。
在线的CompareDataByKey);
谁能在我编写的代码的上下文中解释这个错误的含义?
c - bsearch,常量字符数组和指针算法
我想将 bsearch 与 const 字符数组一起使用,以确定该数组中的索引。这是代码:
它在 GNU/Linux/gcc 上运行,但我不确定它是否符合 ANSI 标准,并且它是否可以在其他编译器上正常运行。你认为我可以用这种方式吗,或者你有什么更好的建议来解决这个任务。
c - 使用 bsearch() 搜索 char 数组时是否可以找到元素的位置
第一次使用 bsearch() 我想知道有没有办法找到元素的位置或返回元素?
我有 bsearch() 工作,它返回一个指针,但我不能用它来打印元素。
c - 在 C 中使用 bsearch 的分段错误
我的程序在使用 bsearch() 的行上出现分段错误。我在这里做错了什么?这是我的比较功能。我在 qsort 中使用了类似的版本,但现在我需要在 bsearch 中使用这个版本:
player_t 类型只是一个包含一堆不同成员(如 nameLast、nameFirst 等)的 Struct。我无法弄清楚我的 bsearch() 参数有什么问题!