我试图在C中用8051 uC写一些软件。问题是最长整数等于16位。是否可以创建自己的32位无符号整数变量?当然它应该支持所有操作,如+, - ,<<等
如果不可能有什么替代方案?对我而言,我想到的唯一方法是拥有两个16位整数。但在该解决方案中,我认为我不能使用标准运算符。在所有操作中,我必须记住修改两个整数。
还有更好的方法吗?
提前致谢。
答案 0 :(得分:1)
如果您的编译器/ libc实现符合C99,则可以使用
uint32_t
表示表示32位无符号整数。如果没有,你仍然可以给
unsigned long
尝试(打印尺寸以查看它有多大)。