面试
文章平均质量分 79
qin3232521
这个作者很懒,什么都没留下…
展开
-
IT公司笔试面试题系列(三)
1.三个float:a,b,c。 问值 (a+b)+c==(b+a)+c (a+b)+c==(a+c)+b两者都不行。在比较float或double时,不能简单地比较。由于计算误差,相等的概率很低。应判断两数之差是否落在区间(-e,e)内。这个e应比浮点数的精度大一个数量级。2.请讲一讲析构函数和虚函数的用法和作用?析构函数是特殊的类成员函数,它没有返回类型,没有参数,不能随意调用原创 2012-04-18 13:06:56 · 337 阅读 · 0 评论 -
C语言面试题(二)
位操作(Bit manipulation)9. 嵌入式系统总是要用户对变量或寄存器进行位操作。给定一个整型变量a,写两段代码,第一个设置a的bit 3,第二个清除a 的bit 3。在以上两个操作中,要保持其它位不变。对这个问题有三种基本的反应1). 不知道如何下手。该被面者从没做过任何嵌入式系统的工作。2). 用bit fields。Bit fields是被扔到C语言死角的东西,它原创 2012-04-18 13:45:45 · 521 阅读 · 0 评论 -
指针高级例题
#include "stdafx.h " #include iostream > using namespace std;// -----------------------------------------------void GetMemory1(char * p) { p = ( ch原创 2012-05-02 20:32:47 · 578 阅读 · 2 评论 -
内存。二重指针,指针的高级使用
内存分配方式有三种:(1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static 变量。(2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。(3) 从堆上分配,亦称动态内存分配。转载 2012-05-02 20:37:18 · 449 阅读 · 0 评论 -
C++多线程(二)
C/C++ Runtime 多线程函数一 简单实例主线程创建2个线程t1和t2,创建时2个线程就被挂起,后来调用ResumeThread恢复2个线程,是其开始执行,调用WaitForSingleObject等待2个线程执行完,然后推出主线程即结束进程。/**//* file Main.cpp * * This program is an adaptation of原创 2012-05-02 20:57:31 · 346 阅读 · 0 评论 -
IT公司笔试面试题系列(四)
1.请你分别画出OSI的七层网络结构图和TCP/IP的五层结构图。7 应用层 5应用层6 表示层 4传输层5 会话层 3 网络层4 传输层 2 数据链路层3 网络层 1物理层2 数据链路层 1 物理层2.请你详细地解释一下IP协议的定义,在哪个层上面?主要有什么作用?TCP与U原创 2012-04-18 13:08:14 · 318 阅读 · 0 评论 -
const 详解
使用const提高函数的健壮性 看到const关键字,C++程序员首先想到的可能是const常量.这可不是良好的条件反射.如果只知道用const定义常量,那么相当于把火药仅用于制作鞭炮.const更大的魅力是它可以修饰函数的参数、返回值,甚至函数的定义体const是constant的缩写,“恒定不变”的意思.被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性.原创 2012-05-03 11:00:43 · 542 阅读 · 0 评论 -
c++面试试题
1. 以下三条输出语句分别输出什么?[C易]char str1[] = "abc";char str2[] = "abc";const char str3[] = "abc"; const char str4[] = "abc"; const char* str5 = "abc";const char* str6 = "abc";cout原创 2012-05-02 09:41:04 · 964 阅读 · 5 评论 -
堆栈,堆栈,堆和栈的区别
堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态原创 2012-05-05 12:30:52 · 393 阅读 · 0 评论 -
C++高效编程忠告
一、#include “filename.h”和#include 的区别#include “filename.h”是指编译器将从当前工作目录上开始查找此文件#include 是指编译器将从标准库目录中开始查找此文件二、头文件的作用加强安全检测通过头文件可能方便地调用库功能,而不必关心其实现方式三、* , &修饰符的位置int *i,j; // better fo原创 2012-05-05 12:47:10 · 894 阅读 · 0 评论 -
C++ 虚函数表解析
前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 关于虚函数的使用方法,我在这转载 2012-05-10 20:55:47 · 438 阅读 · 1 评论 -
C语言面试题
预处理器(Preprocessor)1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL我在这想看到几件事情:1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)2). 懂得预处理器将为你计算常数表达式的值,因此,直接写出你原创 2012-04-18 13:45:05 · 228 阅读 · 0 评论 -
IT公司笔试面试题系列(二)
1.假设现有一个单向的链表,但是只知道只有一个指向该节点的指针p,并且假设这个节点不是尾节点,试编程实现删除此节点参考:将下一个节点的内容复制到本节点上,然后删除下一个节点。2.字符指针、浮点数指针、以及函数指针这三种类型的变量哪个占用的内存最大?为什么?答案:指针变量也占用内存单元,而且所有指针变量占用内存单元的数量都是相同的。就是说,不管是指向何种对象的指针变量,它们占用内存的原创 2012-04-18 13:06:23 · 581 阅读 · 0 评论 -
IT公司笔试面试题系列(一)
C++笔试题1.多态类中的虚函数表是Compile-Time,还是Run-Time时建立的?答案:虚拟函数表是在编译期就建立了,各个虚拟函数这时被组织成了一个虚拟函数的入口地址的数组.而对象的隐藏成员--虚拟函数表指针是在运行期--也就是构造函数被调用时进行初始化的,这是实现多态的关键.2.一个父类写了一个virtual 函数,如果子类覆盖它的函数不加virtual ,也能实现多态?原创 2012-04-18 13:05:46 · 337 阅读 · 0 评论 -
IT公司笔试面试题系列(五)
1.char a[2][2][3]={{{1,6,3},{5,4,15}},{{3,5,33},{23,12,7}} };for(int i=0;iprintf("%d ",_______);在空格处填上合适的语句,顺序打印出a中的数字答案:a[i/6][(i/3)%2][i%3];这道题目是多维数组的输出问题,这里要考虑的是每维数字的取值顺序问题:第一维,前六次循环都取0,后六次原创 2012-04-18 13:08:53 · 300 阅读 · 0 评论 -
IT公司笔试面试题系列(八)
1.在C++中有没有纯虚构造函数?构造函数不能是虚的。只能有虚的析构函数2.在c++的一个类中声明一个static成员变量有没有用?在C++类的成员变量被声明为static(称为静态成员变量),意味着它为该类的所有实例所共享,也就是说当某个类的实例修改了该静态成员变量,也就是说不管创建多少对象,static修饰的变量只占有一块内存。其修改值为该类的其它所有实例所见;而类的静态成员函原创 2012-04-18 13:10:50 · 581 阅读 · 0 评论 -
IT公司笔试面试题系列(九)
1.一个类有基类、内部有一个其他类的成员对象,构造函数的执行顺序是怎样的。答:先执行基类的(如果基类当中有虚基类,要先执行虚基类的,其他基类则按照声明派生类时的顺序依次执行),再执行成员对象的,最后执行自己的。2.在UML 中,聚合(aggregation)和组合(composition)有什么区别答案:聚合关系更强,类似于pages 和book 的关系;组合关系要弱,类似于b原创 2012-04-18 13:11:20 · 279 阅读 · 0 评论 -
2011.10.17百度面试题
1、进程切换需要注意哪些问题?保存处理器PC寄存器的值到被中止进程的私有堆栈; 保存处理器PSW寄存器的值到被中止进程的私有堆栈; 保存处理器SP寄存器的值到被中止进程的进程控制块;保存处理器其他寄存器的值到被中止进程的私有堆栈; 自待运行进程的进程控制块取SP值并存入处理器的寄存器SP; 自待运行进程的私有堆栈恢复处理器各寄存器的值;自待运行进程的私有堆转载 2012-04-17 21:38:38 · 169 阅读 · 0 评论 -
百度2011.10.16校园招聘会笔试题
一、算法设计1、设rand(s,t)返回[s,t]之间的随机小数,利用该函数在一个半径为R的圆内找随机n个点,并给出时间复杂度分析。思路:这个使用数学中的极坐标来解决,先调用[s1,t1]随机产生一个数r,归一化后乘以半径,得到R*(r-s1)/(t1-s1),然后在调用[s2,t2]随机产生一个数a,归一化后得到角度:360*(a-s2)/(t2-s2)2、为分析用户行为,系统常需存转载 2012-04-17 21:43:35 · 228 阅读 · 0 评论 -
淘宝2011.9.23校园招聘会面试题
1、操作系统中的同步和异步有什么区别?分别应用在什么场合?答:同步,就是说你的程序在执行某一个操作时一直等待直到操作完成。 最常见的例子就是 SendMessage。该函数发送一个消息给某个窗口,在对方处理完消息之前,这个函数不返回。当对方处理完毕以后,该函数才把消息处理函数所返回的 LRESULT值返回给调用者。异步,就是说程序在执行某一个操作时,只是发出开始的指令;由另外的并行程转载 2012-04-17 22:06:24 · 193 阅读 · 0 评论 -
IT公司笔试面试题系列(六)
1.巴拿赫病故于1945年8月31日。他的出生年份恰好是他在世时某年年龄的平方,问:他是哪年出生的?答案:设他在世时某年年龄为x,则x的平方2.有50家人家,每家一条狗。有一天警察通知,50条狗当中有病狗,行为和正常狗不一样。每人只能通过观察别人家的狗来判断自己家的狗是否生病,而不能看自己家的狗,如果判断出自己家的狗病了,就必须当天一枪打死自己家的狗。结果,第一天没有枪声,第二天没有枪原创 2012-04-18 13:09:30 · 2320 阅读 · 0 评论 -
IT公司笔试面试题系列(七)
1.Windows程序的入口是哪里?写出Windows消息机制的流程。Windows程序的入口是WinMain函数.消息机制:系统将会维护一个或多个消息队列,所有产生的消息都会被放入或是插入队列中。系统会在队列中取出每一条消息,根据消息的接收句柄而将该消息发送给拥有该窗口的程序的消息循环。每一个运行的程序都有自己的消息循环,在循环中得到属于自己的消息并根据接收窗口的句柄调用相应的窗口过程。而在原创 2012-04-18 13:10:19 · 393 阅读 · 0 评论 -
2011.10.17百度面试题
1、进程切换需要注意哪些问题?保存处理器PC寄存器的值到被中止进程的私有堆栈; 保存处理器PSW寄存器的值到被中止进程的私有堆栈; 保存处理器SP寄存器的值到被中止进程的进程控制块;保存处理器其他寄存器的值到被中止进程的私有堆栈; 自待运行进程的进程控制块取SP值并存入处理器的寄存器SP; 自待运行进程的私有堆栈恢复处理器各寄存器的值;自待运行进程的私有堆2012-04-17 21:35:29 · 60 阅读 · 0 评论 -
淘宝2011.9.21校园招聘会笔试题
一、单选题1、我们有很多瓶无色的液体,其中有一瓶是毒药,其它都是蒸馏水,实验的小白鼠喝了以后会在5分钟后死亡,而喝到蒸馏水的小白鼠则一切正常。现在有5只小白鼠,请问一下,我们用这五只小白鼠,5分钟的时间,能够检测多少瓶液体的成分(C)A、5瓶 B、6瓶 C、31瓶转载 2012-04-17 22:05:44 · 216 阅读 · 0 评论 -
面试算法知多少(转)
看来我真的人老珠黄了,这些日子重新拿起算法书,发现思维能力又再次下了一个台阶,成功回到地下一层。翻看一些题目,觉得毫无思路,再一看附近的笔记,我靠,原来这些东西我原来都曾搞定过的。。。 赶在十一长假结束,整理了一些零星的算法笔记,顺手都分享了,希望对面试有些帮助。不要相信有一夜壮阳的九阳神功,算法这玩意靠得是一点一滴的积累和思维的磨练。一些所谓的方法和技巧,都只是给面试来只强心针喂一口大补丸,主要原创 2012-06-26 20:32:29 · 826 阅读 · 1 评论