将 void* 转换为二维数组

2024-04-04

我有一个 void* 我正在进入某个函数,它实际上是一个二维 int 数组。 我想将它作为参数发送给需要二维数组的函数。 正确施放它的最佳方法是什么?

void foo(void* val){
   //How to cast val in order to send to bar??
   bar()
}

void bar(int val[2][2]){
//Do something 
}

bar((int(*)[2]) val);

(正如 Carl Norum 所说,实际上根本不需要强制转换;但它的优点是,如果您不小心将其传递给期望的函数,例如,int(*)[3].)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 void* 转换为二维数组 的相关文章

随机推荐