linux初探

首页

应用服务器

Linux技巧

中文文档

Linux初级

服务器源代码

命令详解

Linux技术应用

Linux安全应用

Linux业界新闻

UniX技术文章

Linux编程与内核

Linux数据库

Linux服务器

Linux安装指导

Linux论坛


首页>>Linux编程与内核>>

热门文章

·C/C++中多维数组指针作为函数
·教你如何使用 C++Builder 制
·C++ Builder中保持控件的位置
·C++Builder中动态更改自定义
·拓展网页技术之C++在网页设计
·C++Builder创建基于Internet
·C++Builder在WIN2000环境下编
·用C++ Builder为计算机增加启
·C++/VC++ 语言编程的疑难问题
·C/C++语言void及void指针深层

推荐文章

java 类型提升的约定


类型提升的约定
  除了将byt型和short型提升到int型以外,java定义了若干适用于表达式的类型提升规则(type promotion rules). 首先,如刚才描述的,所有的byte型和short型的值被提升到int型.其次,如果一个操作数是long型,整个表达式将被提升到long型;如果一个操作数是float型,整个表达式将被提升到float型;如果有一个操作数是double型,计算结果就是double型.

  下面的程序表明:在表达式中的每个值是如何被提升以匹配各自二进制运算符的第二个参数:

QUOTE:
class Promote {
public static void main(String[] args) {
byte b = 42;
char c = 'a';
short s = 1024;
int i = 50000;
float f = 5.67f;
double d = .1234;
double result = (f * b) + (i / c) - (d * s);
System.out.println((f * b) + "+" + (i / c) + " - " + (d * s));
System.out.println("result =" + result);
}
}

  进一步看看发生在下列程序行的类型提升:
QUOTE:
double result = (f * b) + (i / c) - (d * s);

  在第一个表达式f*b中,变量b被提升为float类型,该子表达式的结果当然是float类型.接下来,在子表达式i/c中,边量c被提升为int类型,该子表达式的结果当然是int类型.然后,子表达式d*s中的变量s被提升为double类型,该子表达式的结果当然是double类型.最后,考虑三个中间值,float类型,int类型,和double类型.float类型加int类型的结果是float类型,然后float类型减去提升为double类型的double类型,该表达式的最后结果是double类型.

相关文章:

·在SuSE10.0下安装qemu
·PHP执行root命令
·linux进程介绍之fork vs vfork
·请大虾帮忙解释一下
·Linux学习之GCC从这开始
·LINUX学习之一 GCC学习参数详解
·第一个简单的shell工具
·在开源Java下生存
·Linux底层开发之四书五经

Copyright@2005 www.linuxGoo.com All Right Reserved