hacker的思想
C语言之父:丹尼斯.里奇,这个创造了C语言的人在考虑别人使用C语言编程的时候可能会因为自己的计算机知识不够全面而犯下一些错误,所以制定了很多C语言的规则。这些规则可以很好的帮助我们使用C语言,但是也会限制我们的一些想法。hacker的思想就是在需要突破规则的时候,找到突破口。比如说C语言的语法限制,可以用更底层的内存的规则去突破。
学习的时候更要透过现象看本质,比如说每一个变量名都是一个地址,不管是数组名、整形变量名、浮点型变量名、结构体变量名、还是别的什么变量名其本质都是一个地址而已。不管是数据还是代码,其本质都是一串机器码。
因为CPU不能自动的识别什么是数据什么是代码所以才会产生安全问题,只有认清本质才会不被规则所限制,才可以避免安全问题。