gpt4 book ai didi

c - malloc 指向数组的指针

转载 作者:太空狗 更新时间:2023-10-29 15:01:09 27 4
gpt4 key购买 nike

int (*p)[2];
p=(int(*))malloc(sizeof(int[2])*100);

分配指向数组的指针的正确方法是什么?我无法弄清楚 (int(*)) 的部分

最佳答案

发表评论作为回答:
C 中,您不应强制转换 malloc 的返回值。请引用this post关于为什么 malloc 的类型转换返回值在 C 中不是一个好主意的更多信息。如果出于某种原因你真的很想转换,它应该是 (int(*)[2])(int(*))int *。传递给 malloc 的大小看起来不错(为 2 个整数的数组分配 100 个指针的大小)。所以你应该做

int (*p)[2];
p=malloc(sizeof(int[2])*100);

希望这对您有所帮助!

关于c - malloc 指向数组的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9324785/

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