随笔 - 391  文章 - 0 评论 - 105 trackbacks - 5

摘要: 在C语言中,当结构体中存在指针型成员时,一定要注意在采用赋值语句时是否将2个实例中的指针型成员指向了同一片内存。

  在C++语言中,当结构体中存在指针型成员时,我们需要重写struct的拷贝构造函数并进行“=”操作符重载。阅读全文
posted @ 2006-11-15 11:25 SAP 沧海 阅读(207) 评论(0) 编辑
摘要: 自我感觉是很好的C/C++面试/笔试的题目,大家可以看看阅读全文
posted @ 2006-11-15 11:04 SAP 沧海 阅读(1487) 评论(0) 编辑
摘要: 当程序运行时需要从内存中读出这段程序的代码。代码的位置必须在物理内存中才能被运行,由于现在的操作系统中有非常多的程序运行着,内存中不能够完全放下,所以引出了虚拟内存的概念。把哪些不常用的程序片断就放入虚拟内存,当需要用到它的时候在load入主存(物理内存)中。这个就是内存管理所要做的事。内存管理还有另外一件事需要做:计算程序片段在主存中的物理位置,以便CPU调度。阅读全文
posted @ 2006-11-15 10:51 SAP 沧海 阅读(1149) 评论(1) 编辑
摘要: sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。 阅读全文
posted @ 2006-11-15 10:39 SAP 沧海 阅读(153) 评论(0) 编辑
摘要: 1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。
该类型保证能容纳实现所建立的最大对象的字节大小。阅读全文
posted @ 2006-11-15 10:31 SAP 沧海 阅读(3276) 评论(0) 编辑
摘要: typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。

  在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。
阅读全文
posted @ 2006-11-15 10:13 SAP 沧海 阅读(7746) 评论(3) 编辑
posted @ 2006-11-15 10:05 SAP 沧海 阅读(541) 评论(2) 编辑
摘要: 一个字或双字操作数跨越了4字节边界,或者一个四字操作数跨越了8字节边界,被认为是未对齐的,从而需要两次总线周期来访问内存。一个字起始地址是奇数但却没有跨越字边界被认为是对齐的,能够在一个总线周期中被访问。
某些操作双四字的指令需要内存操作数在自然边界上对齐。如果操作数没有对齐,这些指令将会产生一个通用保护异常(#GP)。双四字的自然边界是能够被16整除的地址。其他的操作双四字的指令允许未对齐的访问(不会产生通用保护异常),然而,需要额外的内存总线周期来访问内存中未对齐的数据。
阅读全文
posted @ 2006-11-15 09:55 SAP 沧海 阅读(883) 评论(1) 编辑