关闭
首页
新闻
新闻首页
新闻分类
头条
图片新闻
热门新闻
热评新闻
最新新闻
吃喝玩乐温哥华
专栏: 省钱快报
专栏: 大选
专栏: 关税
论坛
论坛首页
按版面浏览论坛
论坛热门帖子
论坛精华帖子
买房卖房
温哥华不眠夜
生活互助
投资理财
亲子教育
社团之窗
温哥华地产中心
地产首页
温哥华地产新闻
全部地产新闻
大温楼花
楼花转让信息
地产经纪
经纪售房一览
地产论坛
地产专家专栏
黄页
全部热门商家
搜索
热门分类
全部分类
热门区域
全部区域
大温哥华中文黄页
加拿大中文黄页
会员
登录
关于加西网
电话: +1 (604) 676-2190
网站: westca.com
Android应用: 加西网
微信: westcacom
微博: weibo.com/westca
Twitter: westcacom
地产微信: westcahouse
更多联系方式
论坛
IT人生
C/C++程序员周末小测试
C/C++程序员周末小测试
上一页
1
2
下一页
楼主 / webdriver
时间: 2014-8-01 16:26
求两个整数的中值,请问下面两段代码,哪个有问题?
method 1:
int average(int number1, int number2)
{
return (number1 + number2 )/ 2;
}
method 2:
int average(int number1, int number2)
{
return number1 + (number2 - number1)/ 2;
}
赞
花篮
投诉
踩
分享
第 2 楼 / deerlake
时间: 2014-8-01 16:28
method 1 有越界的风险。
(1)
赞
花篮
投诉
踩
分享
第 3 楼 / 凌儿。
时间: 2014-8-01 17:31
deerlake
写道:
method 1 有越界的风险。
I take the same view as you.
Method 1 can result in a integer overflow during the addition of the operands number1 and number2
赞
花篮
投诉
踩
分享
第 4 楼 / 名震一方
时间: 2014-8-01 17:38
method 2一样有越界的风险吧?。。
赞
花篮
投诉
踩
分享
第 5 楼 / yemilk
时间: 2014-8-01 17:39
两者都有问题
赞
花篮
投诉
踩
分享
第 6 楼 / snailiving
时间: 2014-8-01 17:40
至于整这么累吗,
n1/2+n2/2不就结了
赞
花篮
投诉
踩
分享
第 7 楼 / yemilk
时间: 2014-8-01 17:47
return (x & y) + ((x ^ y) >> 1);
赞
花篮
投诉
踩
分享
第 8 楼 / smart2
时间: 2014-8-01 18:54
a/2 + b/2 + (a%2 + b%2)/2
赞
花篮
投诉
踩
分享
第 9 楼 / 陆压
时间: 2014-8-01 19:25
名震一方
写道:
method 2一样有越界的风险吧?。。
+1
Assert一下
不在乎速度的话变成int64_t再变回来
赞
花篮
投诉
踩
分享
第 11 楼 / cet6
时间: 2014-8-02 10:54
webdriver
写道:
求两个整数的中值,请问下面两段代码,哪个有问题?
method 1:
int average(int number1, int number2)
{
return (number1 + number2 )/ 2;
}
method 2:
int average(int number1, int number2)
{
return number1 + (number2 - number1)/ 2;
}
第二个有问题
赞
花篮
投诉
踩
分享
上一页
1
2
下一页
快速回复
由于您是游客状态, 无法实现此功能, 请点击此处登录
Facebook用户留言
相关功能
版面: IT人生
原始网页版
下一个帖子
上一个帖子
返回上一页
论坛
论坛首页
按版面浏览论坛
论坛热门帖子
论坛精华帖子
买房卖房
温哥华不眠夜
生活互助
投资理财
亲子教育
社团之窗