gpt4 book ai didi

c - 隐式类型转换是否会改变变量的大小

转载 作者:行者123 更新时间:2023-11-30 18:31:57 25 4
gpt4 key购买 nike

例如,

#include <stdio.h>

int main (void) {

int x = 5;
double y = 6;
int z = x+y;

printf("size of z = %d bytes",sizeof(z));

return 0;
}

输出是4字节,为什么不转换为double并作为double占用8字节内存。

最佳答案

不,sizeof z永远是sizeof(int)

当你这样做时:

int z = x+y;

x的值将转换为doubley是双倍的,但这不会改变 x 。结果x+y (类型 double )将转换为 int ,并分配给z .

关于c - 隐式类型转换是否会改变变量的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18248528/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com