C中的整数促销

有些数据类型占用的字节数少于整数数据类型,例如char,short等。如果对它们执行任何操作,它们会自动提升为int类型。这称为整数促销。

给出了一个用C演示整数提升的程序,如下所示。

示例

#include <stdio.h>
int main() {
   char x = 68;
   char y = 34;
   printf("The value of x is: %d", x);
   printf("\nThe value of y is: %d", y);
   char z = x/y;
   printf("\nThe value of z : %d", z);
   return 0;
}

输出结果

上面程序的输出如下。

The value of x is: 68
The value of y is: 34
The value of z : 2

现在,让我们了解以上程序。

变量x和y是char数据类型。当对它们执行除法运算时,它们会自动提升为int并将结果值存储在z中。这称为整数提升。给出的代码片段如下。

char x = 68;
char y = 34;
printf("The value of x is: %d", x);
printf("\nThe value of y is: %d", y);
char z = x/y;
printf("\nThe value of z : %d", z);