编程技术
文章平均质量分 73
wild_fox86116
这个作者很懒,什么都没留下…
展开
-
关于sizeof 和strlen
关于sizeof 和strlen2007年09月20日 星期四 09:11 一、sizeof的概念 sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由转载 2007-10-20 18:40:00 · 423 阅读 · 0 评论 -
虚函数
虚函数联系到多态,多态联系到继承。所以本文中都是在继承层次上做文章。没了继承,什么都没得谈。下面是对C++的虚函数这玩意儿的理解。一, 什么是虚函数(如果不知道虚函数为何物,但有急切的想知道,那你就应该从这里开始)简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解原创 2007-10-27 10:24:00 · 513 阅读 · 0 评论 -
深度剖析传值、传地址和传引用的区别
指针(Pointer) VS 引用(Reference) 指针与引用看上去完全不同(指针用操作符“*”和“->”,引用使用操作符“. ”),但是它们似乎有相同的功能。指针与引用都是让你间接引用其他对象。你如何决定在什么时候使用指针,在什么时候使用引用呢?首先,要认识到在任何情况下都不能使用指向空值的引用。一个引用必须总是指向某些对象。因此如果你使用一个变量并让它指转载 2007-10-27 16:37:00 · 628 阅读 · 0 评论 -
const用法详解
面向对象是C++的重要特性. 但是c++在c的基础上新增加的几点优化也是很耀眼的就const直接可以取代c中的#define以下几点很重要,学不好后果也也很严重 const1. 限定符声明变量只能被读 const int i=5; int j=0; ... i=j; //非法,导致编译错误 j=i; //合法2. 必须初始化 const int转载 2007-10-28 13:06:00 · 769 阅读 · 0 评论 -
小狗喝水(好玩的题目^_^)
有1000瓶水,其中有一瓶有剧毒(假设哪怕一个毒药分子在里面也能致命),现在给你10只小狗在24小时内通过小狗试药的方式鉴定出来哪瓶药有毒。 情况1:假设小狗服药后2小时内即可判断是否中毒,鉴别方案有哪些? 情况2:假设小狗服药之后20小时才能判断是否中毒,鉴别方案又是什么?又是一道智力型题目,很具有挑战性,也蛮好玩的,喜欢做这个样子的题目,有挑战性,还能够做的让人高兴,哈哈想自己做的就先原创 2007-10-04 13:28:00 · 2327 阅读 · 1 评论 -
金山反病毒工程师笔试题二
反病毒工程师笔试卷第三题是这样子的:给你一个32位的16进制数:0x35789021 ,然后倒序输出,即输出:0x12098753开始没有思路,最后才做的他,随便写了写,回来运行了一下发现自己写对了,很happy!!! #includestdio.h>void main()...{ int i = 0x35789021;// cout int *p = &i;原创 2007-10-27 10:42:00 · 1825 阅读 · 0 评论 -
输出什么?
#includeiostream>using namespace std;void main()...{ char str1[] = "abc"; char str2[] = "abc"; const char str3[] = "abc"; const char str4[] = "abc"; const char* str5 = "abc"; co原创 2007-10-27 20:06:00 · 513 阅读 · 0 评论 -
Windows 消息大全使用详解
消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时的坐标。这个记录类型叫做TMsg,它在Windows单元中是这样声明的:typeTMsg = p转载 2007-10-28 13:00:00 · 632 阅读 · 0 评论 -
金山反病毒工程师一笔试题
金山今年的一道笔试题写出各个类的sizeof(),并画出内存情况直接贴我写出来的代码了,结果运行了便之 //为什么语言选择框里面没有C/C++呢?郁闷//我的代码是C++的#includeiostream.h>class A...{private: int m_a;};class B:public A...{private: int m_b;};class C:pu原创 2007-10-27 10:31:00 · 1550 阅读 · 3 评论 -
Windows 消息大全使用详解二
WM_MENURBUTTONUP = $0122;WM_MENUDRAG = $0123;WM_MENUGETOBJECT = $0124;WM_UNINITMENUPOPUP = $0125;WM_MENUCOMMAND = $0126;WM_CHANGEUISTATE = $0127;WM_UPDATEUISTATE = $0128;WM_QUERYUISTATE = $0129; WM_CT转载 2007-10-28 13:02:00 · 726 阅读 · 0 评论 -
字节对齐详解
一.什么是字节对齐,为什么要对齐? 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特 定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只转载 2007-10-28 12:41:00 · 1010 阅读 · 0 评论 -
腾讯一笔试题
最近看了腾讯05年的一个笔试题,感觉还好,发上来题目是这样说的:请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句刚刚开始看到这个题目没有什么思路,后来细细想,突然间有用汇编或是其他语言做它的冲动,这样就可以避开大于、小于和if了,哈哈,不过还是老老实实的用c做吧^_^有个人给了一个答案是: #include "stdafx.h" #include原创 2007-10-01 19:06:00 · 1143 阅读 · 3 评论 -
通过sizeof和strlen认识字符串常量
通过sizeof和strlen认识字符串常量shawpinlee posted @ 2007年09月15日 08:35PM in C/C++ C/C++试题 -Part 1字符串型常量字符串常量是双引号中的字符序列(可能是空的)。可以用字符常量所用的转义机制表示字符串中的字符。标准C语言允许在字符串型常量前面加上L前缀来指定宽字符串常量。对每个n字符的非宽字符串常量,运转载 2007-10-20 19:51:00 · 6875 阅读 · 1 评论 -
关于const的使用
1、什么是const? 常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。(当然,我们可以偷梁换柱进行更新:)2、为什么引入const? const 推出的初始目的,正是为了取代预编译指令,消除它的缺点,同时继承它的优点。3、cons有什么主要的作用? (1)可以定义const常量,具有不可变性。 例如: c转载 2007-10-21 21:41:00 · 526 阅读 · 0 评论 -
名字改编(name mangling)、调用约定与对策
以vc为例,1。c和c++之间:void foo(int x, int y); 该函数被C编译器编译后在库中的名字为_foo,而C++编译器则会产生像_foo_int_int之类的名字用来支持函数重载和类型安全连接.由于编译后的名字不同,C++程序不能直接调用C函数.C++提供了一个C连接交换指定符号extern"C"来解决这个问题.2。不同编译器之间:即使是按照c链接,但是不同的转载 2007-10-21 22:16:00 · 959 阅读 · 0 评论 -
深入理解sizeof
最近笔试考了不少东西,也学习了不少东西,所以把学到的东西记录一下^_^注:下面转载的文章个别地方有误,有的地方让人费解深入理解sizeof作者:房秉毅 最近在论坛里总有人问关于sizeof的问题,并且本人对这个问题也一直没有得到很好的解决,索性今天对它来个较为详细的总结,同时结合strlen进行比较,如果能对大家有点点帮助,这是我最大的欣慰了。一、好首先看看sizeof和st转载 2007-10-20 16:28:00 · 463 阅读 · 0 评论 -
sizeof
SIZEOF--------------------------------------------------------------------------------------------------------关键字:sizeof,字节对齐,多继承,虚拟继承,成员函数指针前向声明: sizeof,一个其貌不扬的家伙,引无数菜鸟竟折腰,小虾我当初也没少犯迷糊,秉着“辛苦我一个转载 2007-10-20 19:39:00 · 619 阅读 · 1 评论 -
静态、动态编译
联编是指一个计算机程序自身彼此关联的过程。按照联编所进行的阶段不同,可分为两种不同的联编方法:静态联编和动态联编。 静态联编 静态联编是指联编工作出现在编译连接阶段,这种联编又称早期联编,因为这种联编过程是在程序开始运行之前完成的。 在编译时所进行的这种联编又称静态束定。在编译时就解决了程序中的操作调用与执行该操作代码间的关系,确定这转载 2007-10-20 20:07:00 · 498 阅读 · 0 评论 -
五大内存分区
五大内存分区转载 2007-10-20 23:31:00 · 715 阅读 · 0 评论 -
C++中extern “C”含义深层探索
1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程 式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支 持函数的重载,C++对全局函数的处理方式与C有明显的转载 2007-10-20 23:35:00 · 559 阅读 · 0 评论 -
C++中Name-mangling
Name-mangling是指为了在目标文件符号表中和连接过程中使用的名字通常和编译目标文件的源程序中的名字不一样,编译器将目标源文件中的名字进行调整。Name-mangling不是一个非常新的技术,例如在C语言中也有,我们在汇编C语言时经常看到的以下划线“_”开头的函数名,其实就是C编译器将函数名进行了Name-mangling。但是在C++中Name-mangling要复杂的多。因为C++转载 2007-10-21 22:17:00 · 1948 阅读 · 0 评论 -
解读IEEE标准754:浮点数表示
一、背景 在IEEE标准754之前,业界并没有一个统一的浮点数标准,相反,很多计算机制造商都设计自己的浮点数规则,以及运算细节。那时,实现的速度和简易性比数字的精确性更受重视。 直到1985年Intel打算为其的8086微处理器引进一种浮点数协处理器的时候,聪明地意识到,作为设计芯片者的电子工程师和固体物理学家们,也许并不能通过数值分析来选择最合理的浮点数二进制格式。于是Intel在请加州大学转载 2007-12-04 18:08:00 · 1484 阅读 · 1 评论