为了账号安全,请及时绑定邮箱和手机立即绑定

请问 /*两者结果一样,区别是什么?*/?

请问 /*两者结果一样,区别是什么?*/?

梦里花落0921 2022-04-19 17:15:41
main(){long x,y,c;x=50000;y=35126;c=x-y;printf("c=%1d",c);getch();}main(){int x,y,c;x=50000;y=35126;c=x-y;printf("c=%d",c);getch();}
查看完整描述

3 回答

?
守着星空守着你

TA贡献1799条经验 获得超8个赞

您好,如果您使用printf("c=%1d",c);
确实没有什么区别,
但是如果是printf("c=%5d",c);
在输出时c不满5位 也会占五个字符的长度,一般都是用做格式控制的

查看完整回答
反对 回复 2022-04-24
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

VC++ 编译器,int , 默认是 long int. 没有区别。
TC 编译器,int , 默认是 short int , 有区别。
printf("c=%1d",c); 不是 %1d, 是 %ld (long d)

查看完整回答
反对 回复 2022-04-24
?
手掌心

TA贡献1942条经验 获得超3个赞

两个类型不同!一个是long,一个是int类型,long是有符号64位的整数,Int是有字符的32位整数.

查看完整回答
反对 回复 2022-04-24
  • 3 回答
  • 0 关注
  • 171 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信