gpt4 book ai didi

C 风格编码和动态数组

转载 作者:行者123 更新时间:2023-11-30 16:11:05 24 4
gpt4 key购买 nike

这个问题是关于malloc在 C 中与结构或数组相关。我注意到有两种分配内存的方法,但我无法区分它们之间的区别。

char* arr = (char*) malloc(capacity * sizeof(char));

对比

char* arr =  malloc(capacity * sizeof(char));

额外的(char*)有什么用? ?如果没有它,代码可以正常编译并执行相同的结果。

最佳答案

在 C++ 中,您需要进行 (char*) 强制转换,但在为 C 编译时,void* 将自由转换为任何其他指针类型。

如果代码可能在两种语言之间共享,那么进行强制转换不需要任何成本。

关于C 风格编码和动态数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58720126/

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