C语言和C++的出路在哪里?
发布网友
发布时间:2022-04-21 21:31
我来回答
共5个回答
热心网友
时间:2022-06-03 11:12
展开1全部C/C++语言应用是非常广泛的,那么学习C/C++能用来干什么呢?
1. 实验室开发
不敢说C++是世界上最好的语言,但C++基本是工科生中的大语言。
都说C++兼具面向过程以及面向对象的特性,既拥有比较优秀的运行速度,又有良好的大型项目开发能力,那简直可以制霸高校实验室了。
2. 后端开发
主流的后端开发语言就那么几种,以Java、C++领衔,Python和Go紧跟其后。
3. 游戏开发
掌握了C++基本语法之后,开发游戏也依然是一个不错的选择,目前工业级别的3D游戏引擎仍然是用C或C++编写的。
虽然以个人能力无法去完成一个庞大的网络游戏,但是从简单开始,编写一些小游戏,然后逐渐深入,循序渐进并最终加入大型游戏开发团队还是非常好的一个选择。与之相应的就业岗位主要有游戏开发工程师、游戏引擎架构工程师等。
4. 客户端开发
毕竟C++已经是一个很成熟的语言了,所以除了后端开发其实它还有很多其它的开发岗位可以选择。自然而然的,就是客户端开发了。
相信大多数学C++的同学都用过C++写桌面软件吧。那时候估计还是用MFC,照着代码书上敲一遍就能写一个比较简单的界面了。所以如果不想做后端,完全可以靠C++找一份客户端开发的工作。做客户端同样也需要扎实的编程基础和计算机理论基础,同时可能还要熟悉Windows/C++编译链接机制、QT客户端开发技术体系、Windows消息机制等技术。
所以,假如你学的是C++,同时也不在乎业内莫名其名的岗位歧视链的话,找一个客户端开发的工作也是非常不错的。只不过相较于后端开发,你可能需要重新审视客户端这个角色。
5. 多媒体开发
目前多媒体技术同样渗入到人们的日常生活中,音视频已经成为人们获取信息的一个非常重要的手段。音视频在传输过程中都是经过压缩并且按照一定规则打包过的。视频的编码技术从最开始的H.261到如今的H.265,经历了30多年的发展,而且实现代码全部是由C或C++实现。
最新的HEVC编码标准就是由C++代码实现,对此感兴趣的话在学完C++语法后,可以去ITU(国际电信联盟)官网去下载源码查看。与之相应的就业岗位有图像算法工程师、视频编码研发工程师、音视频转码工程师等。
6. 嵌入式开发
上面几种岗位选择都是偏软件方方向的,而C/C++还有一类非常大的就业方向,就是去做嵌入式。嵌入式本身可能是偏硬件一点,但是现在做个什么事,都是软硬不分家的。
嵌入式的开发同样也会涉及到网络编程、并发编程等方面。通俗点解释可能就是,嵌入式代码是运行在别的小系统上,而不是传统意义的计算机上。这个方向除了需要编程能力,还需要基本的电路理论素养。
一般招聘嵌入式开发岗的公司大多是以硬件产品为主的互联网+公司,比如小米、华为等。进去公司很多都是在做物联网相关的工作,毕竟这是热点。当然也会有其它的业务方向,例如芯片、机器人等。
7. 人工智能
人工智能、机器学习等方向也少不了C或C++语言的身影。
需要强调的是虽然C++语言可以从事的方向非常广泛,但是仅仅掌握C++语法是远远不够的,上述的应用领域C++语言是基础,进入这些领域还需要进一步深入系统学习相关领域的知识以及去接触真实企业项目的内容。
热心网友
时间:2022-06-03 11:12
C和C++都是工具
你相当于在问:会用扳手有啥出路?
答:可以打份儿不错的工
但是,如果不懂数学就打一辈子工吧
随便扔个程序给你体会下吧 你一定能看懂每个步骤 but why?
大整数阶乘
#include<stdio.h>
#define N 1000 //要计算的N
long s[N]={1,1},n=N,t=2,a=1,b=0;
int main()
{
for(;a<=*s||(++t<=n?(b=0,a=1):0);(*s==a++&&b)?(*s)++:0)
s[a]=(b+=s[a]*t)%10000,b/=10000;
for(printf("%d",s[*s]);--*s>0;)
printf("%04d",s[*s]);
printf("\n");
return 0;
}追问还真不懂,因为现在自学C语言,不过没有找到方向~~因为好多工作不是光会C就可以的,还要什么.net javascript.....等等,所以才问,请帮忙分析下
追答语言工具都是细节 想做脑力劳动就要多看书 专业能力要精
什么.net java php 都是些具体的工具 是细节 你多知道点不会比别人拿得多 少知道点不会比别人拿的少 应为这个东西是工具 没有太多技术含量和别人值得为你付钱的地方 你的思想和智力创造力对于一个脑力劳动者才是最值价的 否则只是熟练某项高级技能的工人而已 和街上扔饼的没啥区别 无非是掌握了某个工具 反复做同样的体力劳动罢了
我们系主任清华大学博士后 i++ ++i的区别都不懂 一样用C语言做起几十万的项目的
关键在于你的能力 数学==能力 专业知识和技能==见识 要多培养能力 有一定的见识就行了
所以你就放心埋头的学数学,C语言哪怕一段程序没写过,出去随便学学就行了,没有哪个看过几本大学的数学书还会觉得C语言是个东西的......那些就业技能一上岗学的飞快,在学校自己死憋没的个用 我们同学在实验室 一个学期看不完一本书 我们跟老师做 几个星期学会
工程手段就是要实践,也不需要特别精,毕竟是脑力劳动者不是?具体细节交给专业的工程师去吧
大方向有了再跟你说点具体的:如果真的喜欢编程,看看《算法导论》第二版,不懂算法的都是编码,不配叫编程....想要提升自己的理论分析能力 学学 《计算方法》 这两本都需要微积分和线代的知识,想看些有趣的东西 可以看看《数论概论》
还是用一个有趣的问题结尾吧--来自《数论概论》:如何判断一个质数能否写成两个整数的平方的和?如:C是一个质数,判断C能否写成 A^2+B^2==C 其中A,B为整数...想想如果是你用C语言你会怎么写??但是这里可以告诉你 如果你学过数论 你就会知道 如果C%4 == 1 则C满足条件.....和你自己的思路比较一下 相信你能明白数学的重要性了
热心网友
时间:2022-06-03 11:13
C:底层开发、驱动开发、嵌入式开发和基础软件……
C++:就更多了,网络游戏、手机软件啊、各种通用软件啊等等等……
热心网友
时间:2022-06-03 11:13
c是肯定没问题的,C++前景就不好说了
热心网友
时间:2022-06-03 11:14
编写系统是最本质的。