练习2.5、2.6、2.7

2.5:指出下述字面值的数据类型并说明每一组内几种字面值得区别:

a)'a',L'a' , "a",L"a"

  'a':字符型字面值,类型为char;

  L'a':宽字符型字面值,类型为wchar_t;

  "a":字符串字面值;

  L"a":宽字符串字面值;

b)10,,10u,10L,10uL,012,0xC

  10:整型字面值;

  10u:无符号整型字面值,类型为unsigned;

  10L:长整型字面值,类型为long;

  10uL:无符号长整型字面值,类型为unisgned long;

  012:八进制字面值;

  0xC:十六进制字面值;

c)3.14,3.14f,3.14L

  3.14:浮点型字面值;

  3.14f:单精度浮点型字面值,类型为float;

  3.14L:扩展精度浮点型字面值,类型为long double;

d)10,10u,10.,10e-2

  10:整型字面值;

  10u:无符号整型字面值,类型为unsigned;

  10.:浮点型字面值,类型为double;

  10e-2:浮点型字面值,类型double,表示为0.100000000000000;

练习2.6:下面两组定义是否有区别,如果有,请叙述之:

  int month=9,day=7;

  int month=09,day=07;

1)定义变量的形式是以十进制格式的数赋值给变量。

2)定义变量的形式是以八进制格式的数赋值给变量,但是,9超出了八进制的范围,所以编译时会出错。

练习2.7:下述字面值表示何种含义?它们各自的数据类型是什么?

a)"Who goes with F\145rgus?\012"------------>"Who goes with Fergus?\n"    字面值是字符串型,\145:八进制数,转换成十进制数,就是e;\012:换行。

b)3.14e1L---------------------------->3.14xe1=31.400000000000000,类型为long double;

c)1024f------------------------------->1024.0000000,类型为float,在某些编译器环境下会出错,改成1024.f即可。

d)3.14L------------------------------->3.140000000000000,类型为long double

转载于:https://www.cnblogs.com/Dark-King/p/9336917.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值