十六进制数可以用十进制数加减吗?

标签 c binary hex decimal

当用 C 编程时,假设我有整数 h 作为十六进制值和整数 d 作为十进制数。我可以在 h 和 d 之间做加法或减法吗?还是必须使用相同的数字系统?

最佳答案

是的,你可以这样写:

int x = 100 - 0x100 + 0100;

混合了十进制、十六进制和八进制。在计算发生之前,这些值都被转换为二进制(并且编译器将在这个例子中进行计算;它不会在运行时计算)。并且任何常量都可以替换为分配了适当值的 int 值:

int d = 100;
int h = 0x100;
int o = 0100;
int x = d + h + o;

关于十六进制数可以用十进制数加减吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28445459/

相关文章:

c - 如何在C中显示矩阵

c# - float 和 double 如何在 IL 中工作

perl - 以字节/位的形式查看 Perl 变量

java - 在 Java 中,如何将十六进制字符串转换为字节 []?

c++ - 一个字节中的两个值

c - 结构如何保存在内存中 C

c - 使用函数或指向函数的指针之间有什么区别吗?

c - AES EVP_Decrypt的 "length"参数是什么?

java - 二分查找函数未到达末尾

C++ 十六进制字符串到 unsigned int