当我们初学各种编程语言的时候,我们并不知道什么是代码风格,但是当我们有了一定知识储备量的时候,便有了自己的代码风格,一个好的代码风格有利于程序的阅读,那么什么是好的代码风格,我来谈谈自己的理解。
有一定的注释和代码的对齐等等这些我就不再强调,因为有很多文章已经谈过,我就来讲讲代码风格中牵扯到对于语言理解的细节。
比如if(len=lseek(fd,0,SEEK_END)==-1),这里面就有个明显的错误,程序员的本意是想把lseek的返回值给len,然后和-1作比较进行错误处理,但是==运算符的优先级高于=,所以len就只能为1或者0了,脱离了本意,这就牵扯到对于代码细节的理解,运算符的优先顺序,当然你可以反对我,说我们大可加括号高正无忧的进行编程,但是这样做无疑会让我们对于C语言的理解愈走愈远。
比如 (*(void(*)())0)(); 这个语句的理解,如果我们不深入理解C语言的细节,我们很难了解这句语句。(想要具体理解可以看C traps and Pitfalls)
所以,我认为语言的细枝末节和代码风格虽然琐碎,但是确实非常重要的,多花些时间在这方面上,得到的是更多理解。
比如在代码过程中在辨别优先级的时候可以不用()就不用(),那么虽然我们可能多了点时间去调试程序,但是得到的却是对于C语言更多的理解。我只是抛砖引玉,更多的还是大家在实践过程中自己发现并且学习。
只有不怕麻烦与失败,才能得到更多的知识!