程序输出结果问题

尒婀滒 2008-04-05 04:21:24
程序如下:
#include<iostream.h>
void main()
{
int i(8),j(4),k;
k=i<j?++i:++j;
cout<<i<<','<<j<<','<<k<<endl;
k=i-j?i+j:i+j?i:j;
cout<<i<<','<<j<<','<<k<<endl;
double d(12.5);
cout<<(i>j?i:d)<<endl;
cout<<sizeof(i>j?i:d)<<','<<sizeof(double)<<endl;
}
输出结果如下:
8,5,5
8,5,13
8
8,8
本人刚刚接触C++,请高手帮小弟详细解答此题为什么是这个输出结果?
...全文
64 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuyihua1983 2008-04-05
  • 打赏
  • 举报
回复
三元表达式不用我说吧,那就剩下sizeof()了,这个函数是用来算括号中变量或者是某一类型e.g:int在内存中所占用的字节数。
这下应该清楚了吧
wanghao111 2008-04-05
  • 打赏
  • 举报
回复
交流群 C++ java 36414176
ttkk_2007 2008-04-05
  • 打赏
  • 举报
回复
条件表达式,没学过?有什么好解释的
就最后一个把i转换为double了,所以是8
  • 打赏
  • 举报
回复
.....你先把三元表达式
转化成相应的if else结构

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧