求助强制转换
查看原帖
求助强制转换
1051647
fight_for_humanity楼主2024/9/18 19:57

下面四份代码,代表了 doublelong longint 的强制转换。本人对于四个输出存在疑惑,多请大佬解释。

#include<iostream>
double INF = 1e18;
int a = INF;
int main(){std::cout << a;}

output: -2147483648

#include<iostream>
int a = 1e18;
int main(){std::cout << a;}

output: 2147483647

#include<iostream>
long long INF = 1e18;
int a = INF;
int main(){	std::cout << a;	}

output:-1486618624

#include<iostream>
int a = 1000000000000000000;
int main(){	std::cout << a;	}

output:-1486618624

2024/9/18 19:57
加载中...