c vs java_为什么说 C 语言比 Java 难?

1. 编译:写c要懂编译原理,要会写makefile或者懂cmake。用ide的换到linux上就会懵逼,用keil或者vs的互换又会懵逼,所以必须懂编译原理。

2. 跨平台:要熟悉linux以及win平台甚至更多平台的接口,然后写多套底层兼容的代码,使用c宏定义或者是make menuconfig(这个也要懂)配置编译参数。

3. 代码管理:写c要严格控制代码质量,模块化,层次化,主次分明。java因为语法原因,这方面要求低很多。c代码分哪些文件,编译是否编入,c代码管理还要考虑make编译问题,所以复杂一些。

4. 实现功能:实现功能实现需求的能力,绝大多数情况下,c语言弱于所有高级语言。一个是因为c太接近底层(内存管理,基本数据类型偏底层),一个是因为c能使用的官方库太少(除标准库外,其他库都要自己找)。

5. 专业性:c和java都有专业的工种,c有驱动(usb,网络等),内核,文件系统,编译器,虚拟机,高性能算法。c构建了计算机世界,而java生活在这个世界里能做的实在有限。多对多来看,c专业性强于java。

以上是c难的地方,之后再补充,我说说java难的地方。

1. 库源码复杂:c语言第三方库我看代码很勤快,看的也很快。但是java的库代码量太多了。我用java从来不去想它的库怎么实现的,写起代码来就是百度google,复制黏贴。c我要是不懂,直接进源码,浏览一下就懂了,然后就退出来。

没了。

我之前不懂java,0经验,但是懂c++,python。项目需要,按照百度操作搭个springboot框架,看下例子,马上就懂了。虽然也犯过一些小错误,但是基本没啥问题。

mysql+redis+zookeeper+http百度一下就能搭起来。

但是我相信只懂java的人,让他临时去写一下c,多数情况下会懵逼。

c的专业性要求强于java

java经验要求强于c

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值