0

我正在尝试用 C 语言在 8051 uC 上编写一些软件。问题是最长整数等于 16 位。是否可以创建自己的 32 位无符号整数变量?当然它应该支持所有操作,如 +、-、<< 等。

如果不可能,还有什么选择?对我来说,我想到的唯一方法是拥有两个 16 位整数。但在那个解决方案中,我认为我不能使用标准运算符。在所有操作中,我必须记住修改两个整数。

有没有更好的办法?

提前致谢。

4

1 回答 1

1

如果您的编译器/libc 实现符合 C99,您可以使用

uint32_t

类型来表示 32 位无符号整数。如果没有,你仍然可以给

unsigned long

试一试(打印它的 sizeof 以查看它有多大)。

于 2012-08-07T22:15:25.077 回答