C 语言中整数和字符值的存储


我们在程序中多次使用了整数和字符变量。这里我们将看到它们是如何存储在内存中的。

在 C 语言中,字符值也存储为整数。在以下代码中,我们将把 270 放入字符类型数据中。所以 270 的二进制等价物是 100001110,但只取从右边的前 8 位。所以结果将是 (00001110),即 14。然后将值存储到变量 a 中。它还给出了溢出的警告。

在下一个变量 y 中,我们尝试存储负数 -130。负数将存储为 2 的补码法。所以 130 的二进制是 (10000010)。2 的补码值为 01111101 + 1 = 01111110。这里也取最右边的 8 位。所以结果将是 (01111110) = 126

示例

#include <stdio.h>
int main() {
   char x = 270;
   char y = -130;
   printf("The value of x is: %d
", x);    printf("The value of y is: %d", y); }

输出

The value of x is: 14
The value of y is: 126

更新于:2019-07-30

982 浏览量

事业起步

完成课程以获得认证

开始
广告
© . All rights reserved.