
程序员的自我修养 编译链接与库
文章平均质量分 71
Godsight
这个作者很懒,什么都没留下…
展开
-
编译和链接读书笔记
C语言的经典,helloworld程序是每个程序员能随手写出来的#includeint main(){ printf("helloworld\n"); return 0;}用codeblock写完后,按bulid就能直接在屏幕上 显示 helloworld事实上过程可以分为四个步骤预编译编译汇编链接1.预编译c语言的原创 2016-11-03 20:09:27 · 397 阅读 · 0 评论 -
目标文件有什么读书笔记
编译器编译源码后形成的文件叫做目标文件,从结构上将,他已经是经过编译后的可执行文件格式,只是还没有经过链接,其中可能有些符号或有些地址还没有经过调整,其实它本身就是按照课执行文件格式存储。 现在PC平台可执行文件格式,主要是Windows下的PE和Linux下的ELF,都是COFF格式的变种。目标文件格式和可执行文件格式相似,所以在Windows下可以统称他们为PE-COFF文原创 2016-11-04 11:11:42 · 390 阅读 · 0 评论 -
目标文件有什么读书笔记2
目标文件中的主要段落有代码段,数据段,只读数据段,还有BSS段代码段 .text段里面是源文件的含有的代码的机器指令数据段 .data里面是 初始化了的全局静态变量和局部静态变量的值比如int a=5;则会在数据段给a分配sizeof(int)的大小里面存a的值 5在段里面的表现形式应该是 00000101 ,机器语言的形式(存的是值,原创 2016-11-04 21:05:53 · 299 阅读 · 0 评论 -
uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型
uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型在nesc的代码中,你会看到很多你不认识的数据类型,比如uint8_t等。咋一看,好像是个新的数据类型,不过C语言(nesc是C的扩展)里面好像没有这种数据类型啊!怎么又是u又是_t的?很多人有这样的疑问。论坛上就有人问:以*_t结尾的类型是不是都是long型的?在baidu上查一下,才找到转载 2016-11-04 21:29:53 · 456 阅读 · 0 评论 -
WORD 和DWORD
WORD与DWORD 在看C/C++的书或者试题时,有时会见到利用word或dword定义的变量,第一次看到的时候并不知其是什么,更不用说word或dword占几个字节了。幸好在VC安装文件夹下有相关的定义。如C:\Program Files\Microsoft VisualStudio\VC98\Include查看头文件WINDEF.H的定义:typedef unsigned转载 2016-11-04 21:36:11 · 23860 阅读 · 0 评论 -
目标文件有什么读书笔记3
ELF文件结构描述ELF Header 文件头.text.data.bssother sections 其他段Section header table 段表String Tables 字符串表Symbol Tables 符号表ELF目标文件最前部是ELF文件头,包含描述整个文原创 2016-11-05 10:02:17 · 409 阅读 · 0 评论