数据对齐,是指数据所在的内存地址必须是该数据长度的整数倍。DWORD数据的内存起始地址能被4除尽,WORD数据的内存起始地址能被2除尽。x86 CPU能直接访问对齐的数据,当它试图访问一个未对齐的数据时,会在内部进行一系列的调整。这些调整对于程序来说是透明的,但是会降低运行速度,所以编译器在编译程序 ...
分类:
其他好文 时间:
2017-02-05 12:36:04
阅读次数:
155
1. 这里所说的“匿名内部类”主要是指在其外部类的成员方法内定义,同时完成实例化的类,若其访问该成员方法中的局部变量,局部变量必须要被final修饰。2. 原因是编译程序实现上的困难:内部类对象的生命周期会超过局部变量的生命周期。局部变量的生命周期:当该方法被调用时,该方法中的局部变量在栈中被创建, ...
分类:
其他好文 时间:
2017-02-02 14:42:26
阅读次数:
219
1,最初的电脑并没有操作系统,人们通过各种操作按钮来控制计算机。 2,出现了汇编语言,操作人员通过有孔的纸带将程序输入电脑进行编译。 程序员将对应于程序和数据的已穿孔的纸带(或卡片)装入输入机,然后启动输入机把程序和数据输入计算机内存,接着通过控制台开关启动程序针对数据运行;计算完毕,打印机输出计算 ...
分类:
其他好文 时间:
2017-01-22 16:36:27
阅读次数:
229
1、计算机系统的软硬件-“层次分明” 用户 应用软件(航空订票、财物系统、科学计算等) 支撑软件(编译程序、汇编程序、语言处理程序、窗口系统、数据库、实用程序等) 操作系统 计算机硬件 封装性:每层都有一组功能并对外提供相应接口,接口对层内隐蔽实现细节,对层外提供使用约定; 裸机:可计算性资源(处理 ...
分类:
其他好文 时间:
2017-01-20 12:38:04
阅读次数:
196
今天在LINUX下编译C程序时,出现了:warning: the `gets' function is dangerous and should not be used. 这个warning。 百度之后,得知 问题出在程序中使用了 gets ,Linux 下gcc编译器不支持这个函数,解决办法是使用 ...
分类:
其他好文 时间:
2017-01-10 10:11:59
阅读次数:
248
synchronized: 在资源竞争不是很激烈的情况下,偶尔会有同步的情形下,synchronized是很合适的。原因在于,编译程序通常会尽可能的进行优化synchronize,另外可读性非常好,不管用没用过5.0多线程包的程序员都能理解。 ReentrantLock: ReentrantLock ...
分类:
其他好文 时间:
2017-01-07 16:26:32
阅读次数:
259
简介 采用mingw32可以在linux下直接编译c程序输出为windows下的exe程序或dll链接库。 个人编译的纯c程序(不含winapi),主要是c99程序,通常采用gcc/cc编译调试后,再用mingw输出win目标文件。 linux下目标程序及共享库与windows下的应用程序及链接库不 ...
转自:http://www.cnblogs.com/lidabo/archive/2012/08/27/2658909.html C/C++编译系统编译程序的过程为预处理、编译、链接。预处理器是在程序源文件被编译之前根据预处理指令对程序源文件进行处理的程序。预处理器指令以#号开头标识,末尾不包含分号 ...
分类:
编程语言 时间:
2017-01-01 12:36:49
阅读次数:
235
1. 值参数 当利用值向方法传递参数时,编译程序给实参的值做一份拷贝,并且将此拷贝传递给该方法。被调用的方法不传内存中实参的值,所以使用值参数时,可以保证实际值是安全的。 i=1,j=2 2. 引用型参数 和值参不同的是,引用型参数并不开辟新的内存区域。当利用引用型参数向方法传递形参时,编译程序将把 ...
源码编译升级安装了gcc后,编译程序或运行其它程序时,有时会出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found的问题。这是因为升级gcc时,生成的动态库没有替换老版本gcc的动态库导致的,将gcc最新版本的动态库替换系统 ...
分类:
编程语言 时间:
2016-12-30 11:40:59
阅读次数:
15265