Is the type cast necessary when using malloc in C?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Do I cast the result of malloc?
我刚刚学习了如何使用malloc函数,我的老师提到在将内存地址传递给指针时必须进行类型转换。例如,下面是一个使用malloc获得16个新分配字节(4个整数)的代码:
1 2 3 4 5 6 7 8 |
我的问题是:属性右侧的(int*)是否有必要?毕竟p已经是一个指向ints的指针,所以指针算法即使没有该转换也可以正常工作。
谢谢
如果在C++代码中使用MALOC,则只需要强制转换。
对于C来说,最好不要使用强制转换,因为它(a)是不必要的,(b)可以屏蔽编译器报告的问题。