gpt4 book ai didi

c - 为什么 memchr() 将 void 指针作为输入?

转载 作者:行者123 更新时间:2023-12-01 23:00:19 26 4
gpt4 key购买 nike

我目前正在重新编写一些 C 库。所以我的问题是:为什么 memchr 采用 const void *s 指针而不是简单的字符指针?

我知道您可能会搜索其他内容,但该函数的字面意思是 memchr,所以为什么要使用 void 指针?

提前致谢!

最佳答案

C 的早期开发涉及大量将事物视为单独的字节并允许程序员访问表示对象的字节。 memchr 这个名字反射(reflect)了那段历史,现在不能轻易改变。

void 被添加到语言中以提供一种类型,从某种意义上说,“有些东西在那里,但这是灵活的。” memchr 的第一个参数具有 const void * 类型,因为该例程可用于在任何类型的对象中搜索字节,而不一定是主要为数组的对象字符数。

关于c - 为什么 memchr() 将 void 指针作为输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72014897/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com