学C还是学C++?

计算机专业学生,大一上学期学习了C语言,下学期学校要学C++,请问我寒假继续深入学习C还是提前学C++,大佬们有什么建议吗?(个人感觉C学的不是很明白,链表文件什么的还不是很懂...)

这个并没有一个统一的答案,因为学什么不是为了完成目标,而是为了目标服务,这是关键。

C语言在目前的就业行情里,最大的去处是嵌入式,如果你没有搞嵌入式的打算,那你大致学过C语言入门之后就可以开始学习C++了,并不会有什么不行,毕竟还有很多人是直接学C++也不是不行,无外乎是为了循序渐进,让自己不至于初期放弃。

另外C++和C语言虽然很像(在基础语法部分),但是C++的范式要比C语言多的多,最常见的就是面向对象oop,C语言是面向过程的语言,这也和上边说的C语言适合做嵌入式开发呼应起来了,C语言的特点就是接近硬件,适合和寄存器一起工作。

如果你有意走嵌入式方向,那自然有必要学好C语言,这里的学号不止是看书刷题,更重要的是实践,你需要在硬件上结合某款控制器去实现一些项目,这个过程中涉及的远不止C语言,但是最后体现上结果上又都是C语言"写的",这也是为什么很多同学说嵌入式C语言好难啊,并不是C语言的语法多难,相反,C语言可能是最简单的编程语言之一了,当然这是从语法角度而言。一旦结合硬件,结合需求,很多意想不到的问题往往会卡主你很久。能力也是在这个过程中逐渐提升。

至于C++,这个还是得看之后的目的,如果还是做嵌入式方向,那有必要学习下,很多硬件的framework层现在都是C++构成,如果后续接触到比较大型的项目,C++是很重要的开发利器。同时对于应届生也是找工作的利器(刷算法题用C语言是比较艰难的)。

而如果你未来想走纯软方向,比如最多的互联网前端,后端岗位,那则不一定要学C++,Java的优先级要优于C++,而且Java的学习成本也比较低。

说到这基本明白了吧,要按需求学习,至于说怎么学,那就是另一个话题了。

相关推荐
长不胖的路人甲11 分钟前
Serial 串行、Parallel 并行、CMS 并发收集器
java·开发语言·jvm
@三十一Y28 分钟前
C++:AVL树实现
c++
ShineWinsu1 小时前
对于Linux:传输层协议UDP原理的解析
linux·c++·面试·udp·协议·传输层·计算机系统
LingzhiPi1 小时前
零知派ESP32--AS5600磁吸旋钮音量控制器
c++·单片机·嵌入式硬件
小保CPP1 小时前
OpenCV C++车型识别1-图像预处理
c++·人工智能·opencv·计算机视觉
霸道流氓气质2 小时前
分布式系统中接口时序不确定性处理
java·开发语言·分布式
库克克2 小时前
【C++】C++11 包装器function 与 绑定器 bind
开发语言·c++
多加点辣也没关系2 小时前
JavaScript|第30章:事件机制
开发语言·javascript
小大宇2 小时前
python milvus 案例
开发语言·python·milvus
小小龙学IT2 小时前
C++ Placement New 与显式析构:手动对象生命周期管理的艺术
c++·windows·mfc