关于printf输出时的类型转换

输出转换
在程序中将数据用printf函数以指定格式输出时,当要输出的盐据类型与输出格式不符 时,便自动进行类型转换,如一个long型数据用整型格式(%d)输出时,则相当于将long型 转换成整型(int)数据输出;一个字符(char)型数据用整型格式输出时,相当于将char型转 换成int型输出。
注意:较长型数据转换成短型数据输出时,其值不能超出短型数据允许的值范围,否则 转换时将出错。如:
 
     long a=80000;
      printf("%d",a);
运行结果为14464,因为int型允许的最大值为32767,80000超出此值,故结果取以32768为模的余数,即进行如下取余运算:
      (80000-32768)-32768=14464;
输出的数据类型与输出格式不符时常常发生错误,如:
      int d=9;
      printf("%f",d);

      float c=3.2;
      printf("%d",c);
将产生错误的结果。

posted on 2009-08-17 15:18 Ishuan_CPP 阅读(620) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

<2009年8月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
303112345

统计

常用链接

留言簿

随笔档案

搜索

最新评论

阅读排行榜

评论排行榜