码迷,mamicode.com
首页 > 编程语言 > 详细

c++ 一些注意事项

时间:2018-09-19 10:17:31      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:编译   nbsp   处理   存在   cpp   class   最大   c++   强制类型转换   

1.long int的字节信息:int在32位系统下是4字节,long在32位也是4字节,在64位Int不变,但是long变成8字节,所以我们的编译器不同可能会导致我们处理int,long不同

2.注意c++有时候的强制类型转换:(注意最大最小值是不一样的,INT_MAX (231 ? 1) 或 INT_MIN (?231))

#define INT_MAX 0x7fffffff
#define INT_MIN 0x80000000
INT_MAX = 2147483647
INT_MIN = -2147483648

int a;
long b=a*10;
//当a*10的大于0x7fffffff时,编译器是将a*10暂时存在一个int里面,然后在赋值给long,这样就会导致精度损失
//所以上面的操作不如换为以下的操作
b=a;
b=b*10;

 

c++ 一些注意事项

标签:编译   nbsp   处理   存在   cpp   class   最大   c++   强制类型转换   

原文地址:https://www.cnblogs.com/yskn/p/9672726.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!