文档详情

《Java和C++在细节上的差异》.pdf

发布:2015-12-26约19.07万字共34页下载文档
文本预览下载声明
Stephen Liu 深入浅出、事半功倍 博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 posts - 62, comments - 101, trackbacks - 0, articles 日历 Java和C++在细节上的差异(一) Posted on 2011-07-27 17:37 Stephen_Liu 阅读(738) 评论(3) 编辑 收藏 2011年7月 一 二 三 四 五 六 26 27 28 29 30 1 2 一、基本程序设计结构: 3 4 5 6 7 8 9 Java的基本程序结构、关键字、操作符都和C/C++非常相似,以下为主要的几点区别: 10 11 12 13 14 15 16 1. Java的原始数值型数据类型中不包含无符号类型,如c中的unsigned int。 17 18 19 20 21 22 23 2. 在进行移位运算时,当向左边移动时,如1 35, 对于int类型,由于其占有4个bytes(32bits), 因此在Java中,大于32的移位将对32取模,即1 35 24 25 26 27 28 29 30 果等于1 3,以此类推,long将会对64取模。对于int类型而言,如果确实需要获取32位以上的移位,需要将返回值的类型提升到long即可。 31 1 2 3 4 5 6 3. 在c语言中,可以通过判断一个数值是否为0来代替布尔中的false,其他的数值均表示为true。该写法可应用于if和while等子句中,如 if (i) {}, 当 0时,该条件可为真,或者是在判断指针对象是否为NULL时,也可作为if和while的条件,因此很容易出现将if (i == 9) {...}写成if (i = 9) {...}的低级错 , 公告 禁止了该类转换,既if和while中条件必须是布尔类型,如果在Java中写成 if (i = 9) {...}将会直接导致编译错 ,从而更好的避免了该类问题的发生。 4. Java中去除了goto字句,但是仍然视为保留字。然而Java中的break字句,新增了带标签的break [label],可以使break语句直接跳出指定的循环, 昵称:Stephen_Liu 是缺省的最内层循环。注:标签必须放在希望跳出的最外层循环之前,并且紧跟一个冒
显示全部
相似文档