| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2915 人关注过本帖
标题:请问 unsiged long long a = 2*0x7FFFFFFF 是啥意思?
只看楼主 加入收藏
li362490567
Rank: 1
等 级:新手上路
帖 子:89
专家分:8
注 册:2015-7-9
结帖率:0
收藏
 问题点数:0 回复次数:7 
请问 unsiged long long a = 2*0x7FFFFFFF 是啥意思?
#include<stdio.h>
int main(void)
{
    unsigned long long  a=0x7FFFFFFF;
    unsigned long long c=2*0x7FFFFFFF;
    printf("%llu %d\n%llu",2*a,c);
}

为什么 我得到的 2*a和c的值不一样?
2016-01-13 20:42
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
不知道你這個程序想測試什麽、在什麽環境下得到什麽結果。換句話説,這程序得到什麽結果,本來就與機器和環境有關,這是它刻意選擇這個數據和計算的原因,哪抄來的,就看作者自己的解釋。而你的問題,除了不清楚程序想得到什麽,還與你連抄都出現錯誤有關。根本就不知道你説的現象是什麽。

授人以渔,不授人以鱼。
2016-01-14 00:11
qq851429790
Rank: 1
等 级:新手上路
帖 子:5
专家分:2
注 册:2015-12-24
收藏
得分:0 
定义一个16进制的无符long long 型数字
2016-01-14 08:56
li362490567
Rank: 1
等 级:新手上路
帖 子:89
专家分:8
注 册:2015-7-9
收藏
得分:0 
回复 2楼 TonyDeng
#include<stdio.h>
int main(void)
{
    long long a=0x7FFFFFFF;
    long long  b=0x7FFFFFFF;
    long long c=a+b;
    long long e=0x7FFFFFFF+0x7FFFFFFF;
    printf("%llu\n%llu",c,e);

}
我就想问一下,为什么输出的c和e的结果不一样?
2016-01-14 09:23
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
回复 4楼 li362490567
0x7FFFFFFF+0x7FFFFFFF 是什么类型?
2016-01-14 09:31
li362490567
Rank: 1
等 级:新手上路
帖 子:89
专家分:8
注 册:2015-7-9
收藏
得分:0 
回复 5楼 rjsp
long long
2016-01-14 09:35
demon90s
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:44
专家分:121
注 册:2016-1-3
收藏
得分:0 
数字做操作数的类型是int,两个0x7FFFFFFF加起来已经超过了int类型的长度,因此再作为int类型存储的话就不能正确存储了。

所以不一样。
2016-01-14 09:53
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
以下是引用li362490567在2016-1-14 09:35:10的发言:

long long
你言之凿凿,我也没办法。
sizeof(0x7FFFFFFF+0x7FFFFFFF) vs. sizeof(long long)
2016-01-14 12:41
快速回复:请问 unsiged long long a = 2*0x7FFFFFFF 是啥意思?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013465 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved