黑马程序员技术交流社区

标题: java 和 C 的一些语法上的区别 [打印本页]

作者: blensmile    时间: 2015-10-12 11:28
标题: java 和 C 的一些语法上的区别
1.强制类型转换,
    java中, byte型的变量相加默认类型提升为int, 这时再把所得到的值赋给byte就要出错, C中就没有这个问题, char 和 一个整数相加了赋给char完全没问题, 不过有可能结果和想的不一样.
2. 类型
    java中有byte, short, char, int, long,每个类型对应相应的长度, 而C中, char是8bit,c har < short <= int <= long,不同编译器中int和long长度可能不一样, 比如我喜欢玩单片机, keil中的 int 就是16bit, visual studio中, int和long一样是32bit,  C中的类型还对应着unsigned无符号类型,C的类型要多得多

3.判断
    java中, if(表达式)中的表达式值只能是faulse或者true, 不接受其他, 而C中, 就没这个限制, 表达式的值为0就判断为faulse, 不为0就是true, 所以 if( i = 0 )在java中不合法, 在C中, 嗯, 你开心就好~java这样限制, 对码农来说少了一个坑了, 毕竟有时候想写==错写成了=.然后程序就飞了~

4.三目运算符
    java的三目运算符必须要对运算结果进行赋值或者使用, 不能只写一个表达式在那里,比如 a>b ? a:b; 这样子是不行的, 但是C中完全没问题, 这方面, C比java更自由~


作者: 姜君谦大大大    时间: 2015-10-12 16:50
挺不错的,挺全的

作者: 15001162522    时间: 2015-10-12 19:29
还有时间研究C  表示JAVA还没学完 已哭晕~~
作者: Jared    时间: 2015-10-12 19:45
C++和java比较像 多高点C++的技术




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2