自学c语言,有什么好的建议或方法吗?

李冉静

学习方法我认为最重要的是在学C过程中要抓住三点,第一点是勤,一方面是勤上机,任何题目再简单你也要一个个上机练习,有些时候你觉得没有的问题上机测试就会出现意外,当你自己解决的时候你就会在一道题上收获更多的知识,上机的编译器新手经典的VC++6.0,还有像c-free,dev-c++(win10不怎么支持VC++6.0,推荐后面两个)等等都行,专业的就是VS。另一方面是勤看题做题,有些解决问题的固定套路在于积累,同时多看一些解决方法也可以壮大你的编程思维。最后还要勤于思考,遇到问题首先要自己动脑思考,而不是想着先查答案先问人,自己思考研究解决的更加有效果和收获。




第二点要懂,这个意思不是你会用某个函数,而是明白背后的原理,举个例子比如说scanf函数,学过C的都会用,但是关于scanf的工作原理很多人或许并不知道,他们只是简单停留在用的层面,当遇到问题时就显得手足无措,他们没法用背后的原理去解决所遇到的问题。这就需要我们深究和好问了,国内很多C论坛和贴吧都可以去提问和浏览,知名的比如CSDN,还有关于C的标准你也可以多多参考标准文件ANSI C。

第三点是度,这是指学习深度,C入门简单精通很难,如果你是做这方面的可以更加严格要求自己深入去学习,如果你只是应用那么就该结合实际侧重的去学习,比如你只是用C去操作51那么你就该结合51的特点有重点有方向的去学习,那些不用的你就可以忽略过去,当然了基础知识一定要扎实。


KINGEL

最有效的方法就是安装一个开发环境,选一本教材,多进行编程实践,这个期间不要急躁,不要疑惑。初学编程总会疑惑,那些漂亮而实用的应用软件到底怎么编出来的?千万不要疑惑,应用程序的编写取决于你对软件平台的掌握,而不是语言本身。c语言诞生于DOS平台,字符界面是它的特点,初学编程千万不要尝试用它来编写一个通用的应用程序,先达通过实践到熟练掌握其语法语义的目的,然后看一些计算机原理方面的书籍,弄清楚每个简单语句额含义,哪怕一个简单的赋值语句,到底最后编译成了怎样的计算机指令,计算机是如何执行这些指令的。

如果要从事系统级软件开发,要再进一步学习平台方面的知识,例如windows平台,linux 平台,unix平台等,包括对平台原理的理解和平台API的掌握。你能不能编写出优秀的程序取决于你对平台的理解程度。 如果要搞嵌入式,还要学习相关硬件知识。 假如从事某个专业领域的软件开发,还要学习和创造专业相关的算法,或者熟练使用已经成熟的算法库。

最后还要说下c语言的应用范围,主要用于高性能系统级软件开发、服务器、嵌入式、驱动开发、游戏引擎等等。从事这些领域的工作,不仅仅是学习c语言本身,更需要学好大量的基础知识,并非一朝一夕,需要在日常工作与学习中不断积累。 如果你不想从事这些领域,就没必要从C语言学起,除非你是个学生,有大把的时间学习。关于初学编程,到底要不要从c语言学起,网上也是争论不断,还有人批判大学对于IT人才的培养脱离市场需求。我不同意这种观点,大学是培养人才的,不是培养码农的。如果要从事纯应用层的开发,例如java 和c#这种自带虚拟平台的语言,完全不需要大学教育,通过职业培训就可以了。


飞57709646

我的建议是你不要为了学C语言而学C语言。

你想过没有C语言当初的发明目的是什么? 为什么到现在为止C语言还是那么火? 甚至你可以看看其他的现代语言 比如java python 等等 基本的语法为什么和C语言那么相似?

C语言的目的就是尽量简化对硬件控制的难度。

所以我建议你最好从学习硬件开发开始 你就明白为C语言里有循环结构,每一个函数都要有参数,为什么要对指针的上下界判断。

你可以在买一些单片机 国产的STC就可以。学习单片机的开发

也有很多的文档,尤其是中文的文档可以使用。

资料的内容很全 可以从他入门C语言开发硬件程序


徙徙

现在培训班那么多,自学有点枯燥且容易放弃。

1 仍然选择自学就需要看大量的书和论坛,加入一些群互相交流

2 报名上课,这种方式适合有钱且有时间的人。效果不错

3 直接找软件公司有关的工作,能接触这样的人和环境都是有帮助的,又有工资又可以学到东西,这种方法效果慢,但不耽误事。


分享到:


相關文章: