- define是宏替换,编译后代码中不存在
#define u8 uint_8 意味着程序中所有u8被替换为uint_8,在最终代码中根本不会存在u8这个符号,只有uint_8这个符号。
- typedef 是用来定义一种类型的新别名的,它不同于宏(#define),不是简单的字符串替换。它的新名字具有一定的封装性,所以新命名的标识符具有更易定义变量的功能,它是语言编译过程的一部分,但它并不实际分配内存空间。
c语言中文网
知乎提问
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)