extern void *malloc(unsigned int); 为什么报错
本文介绍了extern void *malloc(unsigned int); 为什么报错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
extern void malloc(unsigned int); 为什么报错,但是extern void malloc();这样就可以编译通过,
原型中malloc的参数就是unsigned int 的类型呀
解决方案
malloc()
的参数并不是unsigned int
而是size_t
。size_t
和unsigned int
并不是一样的,size_t
可能是 unsigned int, unsigned char, unsigned long
等,compiler会根据实参选择用哪种unsigned
类型。
参考这两个stackoverflow的回答:
Difference between size_t and unsigned int?
unsigned int vs. size_t
这篇关于extern void *malloc(unsigned int); 为什么报错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文