搜索资源列表
typeof
- typeof,编译时获取表达式类型运算符,是gcc编译器的一个扩展(intel编译器 也支持). 笔者最近作一个项目时需要用比较hack的手段把第三方的dll(无lib但有头文件)里面的外部函数以函数指针的方式提取出来给其他模块作全局变量用,500多个函数呀,声明函数指针可不是个轻松事,类型名字至少排满一行,写了50多个就受不了了. 找了boost的typeof,把里面的代码大幅度简化,提炼,去掉一些依赖.请使用TYPEOF宏,无任何运行时开销。 本版本利用了vc6的1个bug(子类
pointers
- Pointer use in C for pic microcontroller 16F877A CCS compiler/MPLAB/PROTEUS
the-benefits-of-the-set-p-=-NULL
- (1)在没有 p = NULL 时,指针p是指向一个内存地址的,只是这个内存地址对当前程序是非法的。对黑客来说,这可是一个机会。 每次程序崩溃时几乎都会在同一个地址(p所指的位置),这个地址会很容易到黑客手上的,然后黑客可以在指定的内存地址上事先布置好自己的代码,然后运行程序,崩溃时就会到黑客指定的代码上去,结果不堪设想啦。 (2)在有 p = NULL 时,程序同样崩溃,但崩溃的地址是0. 0地址对任何程序都是非法的,所以再牛的黑客也不能把自己的代码布置到内存地址是0的空间上。所以对这种情
自制编译器 ,青木峰郎著 ,P445
- 本书将带领读者从头开始制作一门语言的编译器。笔者特意为本书设计了CЬ语言,CЬ可以说是C语言的子集,实现了包括指针运算等在内的C语言的主要部分。本书所实现的编译器就是C Ь语言的编译器, 是实实在在的编译器,而非有诸多限制的玩具。另外,除编译器之外,本书对以编译器为中心的编程语言的运行环境,即编译器、汇编器、链接器、硬件、运行时环境等都有所提及,介绍了程序运行的所有环节。(This book will lead the reader to make a language compiler fro