这个问题有点像,学习英文有什么用?回答是,英文没有任何用途,但是用英文写的书籍、资料确实相当的有用,甚至是不可缺少的。 同样,仅仅孤立的学习c,除了能通过考试,也没有任何用,但是问题就是目前大多数的公司的项目,以及开源项目,都是用c来描述的,他们很有用。
c无所不能,仅仅懂得语法却是一无是处。
如果你精通了windows下的api,那么你可以用c开发任何的windows应用程序,当然也可以不用c,用任何一门你喜欢的语言,只要你有相应的编译器。
如果你想开发其他os的应用程序,也只要学习相应os平台的api即可。
如果你想开发一个驱动程序,你应该学习你所对应操作系统的驱动框架以及硬件的知识,最后再用c来实现,最后的实现也许用的最多的就是赋值语句,例如向地址为0x7F000000地方写一个数0x1234,至于为什么是这个地址以及为什么要写这个数,你可能研究了一周的datasheet才得出结论。
如果你的强项是算法,假如你能把一张8G的dvd能压缩成8M并且画质还可被大众接受,那么你只需要把论文发表,论文上用数学的原理把这个事情解释清楚就可以了,到时候会有无数的小弟帮你编程实现。如果你没有达到这个高度,你想要看看其他人的算法,这个算法的实现虽然说和具体语言没有任何关系,可大部分的还是c描述的,所以学了c也不吃亏。
说多了,其实还有个问题想说,就是为什么要从c开始
如果说这个行业是一个江湖,那么各门语言好比兵器,既然使宝剑人的多,以及大多数的武林秘籍都是剑谱,那肯定有他的道理,不要为了耍酷就选一个狼牙棒或者九耳大环刀之类的东西,因为你上来就选这么一个东西,不好和人组队啊,就不利于你的提高,反而踏踏实实练剑的人到了一定界别,无论什么兵器,拿过来熟悉熟悉就能用,所以那些争论那种兵器好的人有两种,一种是刚学武功的人,会了一招半式跟着瞎起哄的,他用什么就说什么兵器好;一种就是拿狼牙棒的高手,这种人比较阴暗,他怎么练到这个地步的他不说,只说他的狼牙棒有多好。