我觉得最恐怖的地方在于你没有计算机组成原理的基础,之前就直接学习C语言
首先是C语言他被发明出来的初期就是为了代替汇编语言来写UNIX操作系统的,本身就是一门为编写系统而生的语言,那肯定语言本身的很多特性都与系统及与计算机硬件相契合的地方
而你在没有学习操作系统及计算机硬件相关的基础之前就直接学习C语言的话,就会有很多不理解的地方,比如指针的原理是什么?为什么会缓冲区溢出?申请了内存用完之后不及时释放为什么会造成内存的泄漏等等,一系列与内存和计算机硬件相关的问题都困扰着你
所以我想给自学C语言的新人们提点建议,学习C语言之前先学习和了解下计算机操作系统原理,其次就是学习一下汇编语言,汇编语言的话可以从最简单的汇编语言开始入手,那就是16位的X86汇编语言
在有了计算机操作系统和汇编语言的相关知识之后,再开始着手学习C语言就会感觉顺水推舟,并且理解C语言为什么设计,它对应的汇编语言又是怎么样的?
希望能帮到每个想自学C语言的同学