double 与long 不可强制转换
快离职了,上线的项目出现个错误,钱数差了1分钱,最后找到问题是long和double 不可强制转换。现附上段代码
#include<stdio.h> int main(void){ double amt=128.98; long tmp=0L; printf("amt=%lf\n",amt*100); amt=amt*100; tmp=amt; printf("tmp=%ld",tmp); return 0; }

快离职了,上线的项目出现个错误,钱数差了1分钱,最后找到问题是long和double 不可强制转换。现附上段代码
#include<stdio.h> int main(void){ double amt=128.98; long tmp=0L; printf("amt=%lf\n",amt*100); amt=amt*100; tmp=amt; printf("tmp=%ld",tmp); return 0; }
