gpt4 book ai didi

c函数充当指针?

转载 作者:太空宇宙 更新时间:2023-11-04 06:04:58 24 4
gpt4 key购买 nike

我见过函数在它们的参数中传递指针,它们在动态使用中很常见,在几步之后执行不同的函数。但是我在头文件中遇到了这种表示:

void *allocate_mem(u_int32_t n);

关于如何使用它的任何线索?函数是指针还是返回指针?

最佳答案

参见 my comments .

请使用cdecl.org每当您有这样的问题时...输入 void *allocate_mem(u_int32_t),我们会得到以下信息。

declare allocate_mem as function (u_int32_t) returning pointer to void.

因此,我们知道 allocate_mem 返回 void *。现在,您可能想知道为什么需要一个指向 void...

的指针

C99标准的§6.3.2.3.1规定如下。

A pointer to void may be converted to or from a pointer to any incomplete or object type. A pointer to any incomplete or object type may be converted to a pointer to void and back again; the result shall compare equal to the original pointer.

因此您可以转换 allocate_mem 的结果以满足您的需要,例如

float *data = allocate_mem(1024 * sizeof(float))

关于c函数充当指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12027278/

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