这个问题有点像,学习英文有什么用?回答是,英文没有任何用途,但是用英文写的书籍、资料确实相当的有用,甚至是不可缺少的。 同样,仅仅孤立的学习c,除了能通过考试,也没有任何用,但是问题就是目前大多数的公司的项目,以及开源项目,都是用c来描述的,他们很有用。
c无所不能,仅仅懂得语法却是一无是处。
如果你精通了windows下的api,那么你可以用c开发任何的windows应用程序,当然也可以不用c,用任何一门你喜欢的语言,只要你有相应的编译器。
如果你想开发其他os的应用程序,也只要学习相应os平台的api即可。
如果你想开发一个驱动程序,你应该学习你所对应操作系统的驱动框架以及硬件的知识,最后再用c来实现,最后的实现也许用的最多的就是赋值语句,例如向地址为0x7F000000地方写一个数0x1234,至于为什么是这个地址以及为什么要写这个数,你可能研究了一周的datasheet才得出结论。
如果你的强项是算法,假如你能把一张8G的dvd能压缩成8M并且画质还可被大众接受,那么你只需要把论文发表,论文上用数学的原理把这个事情解释清楚就可以了,到时候会有无数的小弟帮你编程实现。如果你没有达到这个高度,你想要看看其他人的算法,这个算法的实现虽然说和具体语言没有任何关系,可大部分的还是c描述的,所以学了c也不吃亏。
说多了,其实还有个问题想说,就是为什么要从c开始
如果说这个行业是一个江湖,那么各门语言好比兵器,既然使宝剑人的多,以及大多数的武林秘籍都是剑谱,那肯定有他的道理,不要为了耍酷就选一个狼牙棒或者九耳大环刀之类的东西,因为你上来就选这么一个东西,不好和人组队啊,就不利于你的提高,反而踏踏实实练剑的人到了一定界别,无论什么兵器,拿过来熟悉熟悉就能用,所以那些争论那种兵器好的人有两种,一种是刚学武功的人,会了一招半式跟着瞎起哄的,他用什么就说什么兵器好;一种就是拿狼牙棒的高手,这种人比较阴暗,他怎么练到这个地步的他不说,只说他的狼牙棒有多好。
我想说的是,Windows大部分源代码都是用C语言写的,Linux也一样。连操作系统都是C语言写的,其他软件之类的更不在话下。C语言可以干几乎和计算机相关的任何事,编写任何系统或软件,实现任何功能。
C语言介于汇编和高级语言之间,属于最底层的高级语言。学C对绝大多数高级语言学习都有帮助,和C语言关联的IT知识恐怕超过80%
C语言很少有只做变成的了
都是利用其 中级语言的特性
能直接操作硬件 逻辑性强的特点
所以 C语言热门领域现在基本转向了 嵌入式 MCU
这些都是要对硬件相当熟悉的
纯的C语言 不涉及Objective-C 或 C++的
纯编程并不吃香
我只是说了一个方面的看法 楼上的各位说的也都很有道理
值得参考。。
C的主要用途就在单片机,这种面向过程的语言几乎要被淘汰了!基本都是面向过程的!
但是C属于所有语言的基础,学好了对于其他语言学习都很有利,建议如果想往单机发展就学学C++,想往网络方向发展就看看Java
数据结构,算法...没这些,单C语言啥都没用。
以后发展方向可以是底层开发,嵌入式开发,linux编程,现在C人才缺口还是很大的,但会要数据结构要熟练,操作系统要熟练