| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1125 人关注过本帖
标题:连等赋值不同类型变量
取消只看楼主 加入收藏
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
结帖率:91.53%
收藏
已结贴  问题点数:20 回复次数:1 
连等赋值不同类型变量
程序代码:
#include <stdio.h>
int main( void )
{

double a,d;
int b,c;
a=b=1.5;  //double在前
if (sizeof(int)==sizeof(b))
    printf("变量b的类型仍然是int,长度是:%d\n",sizeof(b));
printf("原double型变量a现在的长度是:%d,值是:%d\n",sizeof(a),a);
printf("原int型变量b现在的长度是:%d,值是:%d\n",sizeof(b),b);
c=d=1.5;  //int在前
if (sizeof(double)==sizeof(d))
    printf("变量d的类型仍然是double,长度是:%d\n",sizeof(d));
printf("原int型变量c现在的长度是:%d,值是:%d\n",sizeof(c),c);
printf("原double型变量d现在的长度是:%d,值是:%d\n",sizeof(d),d);

return 0;
}


我以为这样做,int型的b会得到去掉小数的1,而a没得到值,为什么?
又写个c和d,让double在中间,double的d又没得到值,而隔着的c得到值了……

图片附件: 游客没有浏览图片的权限,请 登录注册


哪位大佬解释下啊,谢了!

附书上的解释:
图片附件: 游客没有浏览图片的权限,请 登录注册


习题:
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 变量 int double sizeof 长度 
2019-04-01 15:57
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册


学懵了,忘了用%lf了。哈哈,谢了。

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2019-04-01 16:23
快速回复:连等赋值不同类型变量
数据加载中...
 
   



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

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