腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
3
回答
与
qsort
相比
,可
重入
qsort_r
函数
的
可移植性
如何
?
、
qsort_r
()是
qsort
()
的
重入
版本,它接受一个额外
的
'thunk‘参数并将其传递给compare
函数
,我希望能够在可移植
的
C代码中使用它。
qsort
()是POSIX,到处都是,但
qsort_r
()似乎是一个BSD扩展。作为一个特定
的
问题,这在Windows C运行时中是否存在或具有等效项?
浏览 0
提问于2010-11-29
得票数 10
回答已采纳
1
回答
(在可
重入
的
排序
函数
的
上下文中,例如:
qsort_r
)
、
在检查了之后,我仍然不知道为什么传递给可
重入
者
qsort_r
的
额外参数将被称为thunk。例:(BSD风格
qsort_r
) int (*compar)(void *, const void *, const void *)); 为了明确起见,我知道这个论点是为了什么,也知道
如何
使用它,只是不知道为什么它叫thunk (至少在<em
浏览 0
提问于2015-06-11
得票数 3
回答已采纳
3
回答
C比较器在需要更多参数时
的
最佳做法
、
、
我想使用desired ()方法,但是为了做到这一点,我必须使用比较器
函数
,它
的
输入只有两个指针,所以我不能向它发送所需
的
坐标来排序。因此,我想出了两个解决方案,我正在努力选择其中最好
的
一个: 构建一个新
的
结构,以保存指向点和所需坐标的指针,然后使比较器对指向该结构
的
浏览 6
提问于2017-03-22
得票数 1
2
回答
在这里,我
如何
将变量传递给
函数
?
我使用stdlib.h中
的
qsort
, int (*compar)(constvoid*));void myfun (float *arr, int n, float c) // value of c is changeable...// some code if (tmp
浏览 2
提问于2014-04-11
得票数 6
7
回答
将额外
的
参数传递给
qsort
的
比较器
我只是想知道是否有办法将一个额外
的
参数传递给我
的
比较器,然后在我
的
qsort
函数
中使用它?例如,我有两个比较器(一个按升序,另一个按降序) return strcmp(elem2.name.last, elem1.name.l
浏览 0
提问于2010-11-18
得票数 16
2
回答
在C中实现一个
函数
“装饰器”,该
函数
恢复原始
函数
的
结果
是否有可能在C中实现一个
函数
,它接受
函数
指针fp1并返回另一个
函数
指针fp2,以便每当*fp1在参数列表上返回值x时,*fp2就会在相同
的
参数列表上返回-x?比方说我们希望有一个总是反转从-1, 0, 1到1, 0, -1
的
比较结果
的
倒流器。换句话说,是否有可能{} 所以,例
浏览 2
提问于2021-05-09
得票数 1
回答已采纳
2
回答
使用C中
的
openmp,我
如何
并行包含一个嵌套
的
qsort
比较
函数
的
for循环?
、
、
我想并行化一个for循环,它包含一个用于
qsort
的
嵌套比较
函数
:#include <stdlib.h> }else{ }
qsort
我会得到以下错误: internal compiler error: in get_expr_ope
浏览 0
提问于2019-01-09
得票数 1
回答已采纳
5
回答
C中
的
可移植嵌套
函数
、
、
、
是否可以使用嵌套
函数
/块编写可移植
的
C代码? 我知道gcc只支持嵌套
函数
作为一个非标准
的
扩展,而clang只支持块,但是有什么方法可以用标准C和宏来编写代码呢?如果这是不可能
的
--周围最好
的
工作是什么?例如,
如何
实现以下接受参数
的
可移植版本?编辑2:我意识到,通过传递一个空指针和一个
函数
指针,您可以完成所有可以使用嵌套
函数
完成
的
工作。感谢@Quuxplusone建议
qsort_r<
浏览 4
提问于2012-08-31
得票数 6
回答已采纳
1
回答
在c中回调寄存器
函数
中用户数据
的
用途是什么?
、
、
在寄存器回调
函数
中有两个参数。一个是
函数
指针,第二个是userdata。int callback_register(fn_ptr cb, void *userdata);在回调期间,相同
的
userdata作为参数被发送回。我理解发送
函数
指针
的
用法,但不了解发送userdata
的
用法。有人能告诉我这是怎么用
的
吗?
浏览 0
提问于2018-06-15
得票数 8
1
回答
使用STL std::将方式排序为
qsort_r
、
、
、
使用,我们可以在比较
函数
中使用外部参数。*)a] - (int*)p[*(int*b)]; int values[] = {1,2,3,4};
qsort_r
(arr, 4, sizeof(arr[0]), cmp_with_parameter, values);我们可以根据int arr[]中
的
值对values[]进行排序。现在,我想用std::sort实现类似的
函数
,这就是
如何
在std::sort中使
浏览 4
提问于2014-11-02
得票数 1
回答已采纳
1
回答
排序
函数
的
意外行为
、
、
、
作为家庭作业,我编写了这个程序,它应该使用
qsort_r
对控制台输入进行排序(这是我不能更改
的
一件事,我们需要使用
qsort_r
)。因为我
的
指针还不是很安全,所以我无法确定这里到底出了什么问题。我确实认为将一个
函数
传递给一个
函数
可能有问题,而且我没有正确地传递所有的值,但我不知道
如何
才能做到这一点?
qsort_r
在这里也减少了我
的
灵活性,因为我必须坚持
函数
所需
的
数据类型。 现在,我已经消除了分段错
浏览 3
提问于2016-01-11
得票数 1
1
回答
分割错误、
qsort_r
、数组、指针
的
混合
、
、
、
、
对于SOF问题来说,代码是相当复杂
的
,我不认为我可以使它变得更简单,同时让其他人直接测试它。为什么我会得到这个错误,你能帮我解决吗? printf("%d -- %s\n", arr_i, words[arr_i]); 在第二行,我得到分割错误
的
错误(可能还会漏油)
qso
浏览 2
提问于2015-03-05
得票数 2
回答已采纳
1
回答
qsort
与
函数
比较器不同
、
我需要在
qsort
中
函数
比较
的
帮助。比较数组G->orden,但
与
在另一个数组中用作索引
的
order元素进行比较,以及
如何
在比较中插入G。if(G->v[G->orden[x1]] < G->v[G->orden[x2]]) else .}
qsort
浏览 0
提问于2019-04-13
得票数 1
5
回答
铸造功能指针
、
、
我正在编写一个
函数
,该
函数
接收指向比较
函数
和MyStructs数组
的
指针,并根据比较
函数
对数组进行排序: struct MyStruct(arr, size, sizeof(struct MyStruct), comp);不幸
的
是,这不能编译,因为
qsort
希望比较器接收void *参数,而不是const struct MyStruct我想到了几个不好
的
解决方案,想知道正确
浏览 1
提问于2015-08-11
得票数 16
回答已采纳
1
回答
Ruby
的
max
函数
是
如何
复制
的
?
、
、
、
、
我一直在查看Ruby中
的
(v2.4.1)。[9, 7, 5, 3, 1, 8, 6, 4, 2] # order has changed again (now seems more "natural")我看了一下,但它似乎在做正常
的
比较
浏览 3
提问于2017-09-18
得票数 8
回答已采纳
3
回答
如何
声明任意字节大小
的
对象类型?
、
、
、
我希望通过对任意字节大小
的
对象数组进行空指针
的
转换,以一种
与
类型无关
的
方式遍历数组。我知道数组
的
大小及其项
的
大小,但不知道项
的
类型。是否有一种安全和便携
的
方法来做到这一点?我目前所能想到
的
就是用一个成员创建一个结构,一个所需大小
的
char数组。但我不确定这作为一个解决方案
的
安全性和
可移植性
,因为可能会出现对齐问题以及其他我还没有想到
的
问题。我想要做
的</e
浏览 13
提问于2022-10-12
得票数 0
回答已采纳
1
回答
为什么访问我
的
按引用捕获变量会导致我
的
lambda
函数
出现分段故障?
、
、
我将为本地C/C++ Meetup介绍lambda表达式,因此我准备了几个示例来演示lambda表达式
如何
解决某些任务。 其中一个例子是创建一个
qsort
函数
,该
函数
为比较
函数
接受lambda表达式。对于下面简单
的
sort_ascending()情况,它可以很好地工作,但是对于sort_descending(),其中包含一个由引用捕获
的
计数器整数,并随着对lambda表达式
的
每次调用而递增,在第一次尝试增加计数器时据我所知,testcount
浏览 4
提问于2017-08-18
得票数 0
回答已采纳
3
回答
使用
qsort
()对ints和交换字符串数组进行排序
、
、
我希望按降序对int *arr进行排序,同时,如果char **words数组
的
第二个元素大于第一个元素,则交换int *arr数组
的
相应元素。我
如何
使用
qsort
()和cmpfunc()来完成这个任务?排序ints很容易,但是我
如何
在另一个数组中交换字符串,因为我没有索引,当前对int数组
的
哪两个元素进行了排序?
qsort
(arr,N,sizeof(int),cmpfunc); int cmpfunc(const void * a, const void * b)
浏览 0
提问于2019-01-24
得票数 3
回答已采纳
2
回答
qsort
标准库-
如何
与
非const args发送比较
函数
?
、
我需要实现一个泛型列表,该列表
与
工作人员创建
的
标题相关联。他们在标题中定义了比较
函数
,如下所示:(ListElement=void*)我试图使用标准库中
的
qsort
,但是我无法编译程序,因为我试图传递给
qsort
的
比较
函数
是获得非const参数。elementArray=listToArray(list, &size);
浏览 3
提问于2015-05-06
得票数 1
回答已采纳
2
回答
如何
确定向量中元素
的
顺序?
、
这似乎很奇怪,但我在以下问题上没有发现任何问题:给定长度为x
的
向量n,
如何
构造长度为n
的
向量oo,以便对x[oo[i]] (用于i=1,..,n)进行排序。要求:只允许使用标准库中
的
C
函数
,而且代码必须是快速
的
(注意:我不是C程序员,但我在R. R中有order()处理此任务
的
经验)。 我找到了post ,但这直接讨论了排序问题。
浏览 0
提问于2015-03-01
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Windows 自带的聚合搜索来了,与 Mac 的 Spotlight 相比体验如何?
关于可重入函数
如何提取上下班的打卡时间?使用vlookup与lookup函数就可以了
以太坊伊斯坦布尔之后的重入攻击问题
慢雾:Grim Finance攻击者利用传入恶意代币地址对depositFor进行重入攻击
热门
标签
更多标签
云服务器
ICP备案
云直播
对象存储
腾讯会议
活动推荐
运营活动
广告
关闭
领券