Delphi笔试题目

时间:2023-09-12 03:36:38 作者:懒懒泥 综合材料 收藏本文 下载本文

【导语】“懒懒泥”通过精心收集,向本站投稿了8篇Delphi笔试题目,下面就是小编给大家分享的Delphi笔试题目,希望大家喜欢!

篇1:Delphi笔试题目

Delphi笔试题目

机械类笔试试题

1. Briefly describe what is blanking(cutting), forming, coining and emboss

ing in stamping process.

2. What is metal clading?

3. What is the purpose of adding glass fiber to thermoplastic material?

4. In contrast with metal and thermoplastic material,which has a higher co

efficient of thermal expansion(CTE).

5. The most suitable material for a integral hinge design (typical plastic

thickness=0.25 to 0.5mm at hinge)

6. Can a bending load makes both compressive and tensile stress in a membe

r?

7. What is the design criteria used in plastics catch/snap?

8. What is FEA?

9. Why is natural frequency important in vibration analysis?

10. What is the deflection equation of a cantilever beam fixed at one edge

?

EE笔试试题

1. Name 3 Vehicle Buses.

2. Name 2 possible sources of Electromagnetic interference on Electronics

Circuit ASM.

3. Wavelength for 12MHz frequency signal is____

4. Name 2 important considerations for car radio performan -ce related to

audio signal processing under multipath condition?

5. What is the typical FM receiver RF signal strength to achieve 30dB S/N

for car radio?

6. When a radio is tuned to 98.1 MHz & with a LO of 108.8 MHz, what is the

image frequency?

7. For a system with a matched impedance, what is the Reflection Coefficie

nt and SWR?

8. Which property of the output capacitor is the primary cause of Low Drop

Out(LDO) regulator loop instability?

(1)Equivalent series resistance(ESR)

(2)Effective series inductance(ESL)

(3)Capacitance value

(4)Dielectric material

9. The switching regulator is capable of:

(1)Higher power conversion efficiency

(2)Providing an output voltage that is higher than the input

(3)Generating an output boltage oppsite in polarity to the input

(4)All of the above

10. A linear regulator op Vin(max) = 10v, Vout(min) = 4.8v, Iout(max) = 2.

5mA, Iq(max) = 2.5mA, Ta(max) = 8.5摄氏度,The regulator is available in 3 pac

kages.Each package has the following thermal characteristics:

Package Rja(摄氏度/W) Rjc(摄氏度/W)

SO14 125 30

D1P8 100 52

Choose the most suitable package to handle the power dissipation requireme

nt without a heat sink and why.

软件笔试题

1. How do you code an infinite loop in C?

2. Volatile:

(1)What does the keyword volatile mean? Give an example

(2)Can a parameter be both const and volatile? Give an example

(3)Can a pointer be volatile? Give an example

3. What are the values of a, b, and c after the following instructions:

int a=5, b=7, c;

c = a+++b;

4. What do the following declarations mean?

(1)const int a;

(2)int const a;

(3)const int *a;

(4)int * const a;

(5)int const * a const;

5. Which of the following statements describe the use of the keyword stati

c?

(1)Within the body of a function: A static variable maintains its value

between function revocations

(2)Within a module: A static variable is accessible by all functions wit

hin that module

(3)Within a module: A static function can only be called by other functi

ons within that module

6. Embedded systems always require the user to manipulate bits in register

s or variables. Given an integer variable a, write two code fragments.

The first should set bit 5 of a. The second shnuld clear bit 5 of a. In bo

th cases, the remaining bits should be unmodified.

7. What does the following function return?

char foo(void)

{

unsigned int a = 6;

iht b = -20;

char c;

(a+b >6) ? (c=1): (c=0);

return c;

}

8. What will be the output of the following C code?

main

{

int k, num= 30;

k =(num >5 ? (num <=10 ? 100:200): 500);

printf(“%d”, k);

}

9. What will the following C code do?

int *ptr;

ptr =(int *)Ox67a9;

*ptr = Oxaa55;

10. What will be the output of the follow C code?

#define product(x) (x*x)

main()

{

int i = 3, j, k;

j = product(i++);

k = product(++i);

printf(“%d %d”,j,k);

}

11. Simplify the following Boolean expression

!((i ==12) || (j >15))

12. How many flip-flop circuits are needed to divide by 16?

13. Provides 3 properties that make an OS, a RTOS?

14. What is pre-emption?

15. Assume the BC register value is 8538H, and the DE register value is 62

A5H.Find the value of register BC after the following assembly operations:

MOV A,C

SUB E

MOV C,A

MOV A,B

SBB D

MOV B,A

16. In the Assembly code shown below

LOOP: MVI C,78H

DCR C

JNZ LOOP

HLT

How many times is the DCR C Operation executed?

17. Describe the most efficient way (in term of execution time and code si

ze) to divide a number by 4 in assembly language

18. what value is stored in m in the following assembly language code frag

ment if n=7?

LDAA #n

LABEL1: CMPA #5

BHI L3

BEQ L2

DECA

BRA L1

LABEL2: CLRA

LABEL3: STAA #m

19. What is the state of a process if a resource is not available?

#define a 365*24*60*60

20. Using the #define statement, how would you declare a manifest constant

that returns the number of seconds in a year? Disregard leap years in your an

swer.

21. Interrupts are an important part of embedded systems. Consequently, ma

ny compiler vendors offer an extension to standard C to support interrupts. Ty

pically, the keyword is __interrupt. The following routine (ISR). Point out pr

oblems in the code.

__interrupt double compute_area (double radius)

{

double area = PI * radius * radius;

printf(“\\nArea = %f”, area);

return area;

}

篇2:Delphi招聘笔试题目

Delphi招聘笔试题目

以下跟大家分享的是Delphi招聘经常考的'笔试题目

1. Briefly describe what is blanking(cutting), forming, coining and embossing in stamping process.

2. What is metal clading?

3. What is the purpose of adding glass fiber to thermoplastic material?

4. In contrast with metal and thermoplastic material,which has a higher coefficient of thermal expansion(CTE).

5. The most suitable material for a integral hinge design (typical plastic thickness=0.25 to 0.5mm at hinge)

6. Can a bending load makes both compressive and tensile stress in a member?

7. What is the design criteria used in plastics catch/snap?

8. What is FEA?

9. Why is natural frequency important in vibration analysis?

10. What is the deflection equation of a cantilever beam fixed at one edge ?

更多相关的笔试题目,大家敬请继续阅读:中软融鑫招聘笔试题目    通信公司招聘笔试题目   联合利华英文笔试题目

篇3:Delphi程序员判断题笔试题目

1. 从主菜单上选择Project|Syntax Check菜单选项,Delphi将编译从上次编译后有改动的任何单元,并报出遇到的错误。( )

2. Delphi的VCL对象有些是指针,从堆栈中分配空间,有些则不是。( )

3. 粘贴时,如果作为容器的组件已被选择,剪贴板中的组件会当作容器组件的子组件来粘贴( )

4. 在由Delphi 管理的窗体类声明段中加进任何代码都会引起程序出错。( )

5. Delphi 可以在一个报表中使用一个以上的明细区( )

6. Delphi 可以象其它开发工具一样使用传统的资源,比如菜单可以作为资源加载,以利于实现多国语言环境。( )

7. 创建组件时可以定义属性的缺省值,但字符串属性不能有缺省值。( )

8. 声明一个常量后,在程序中则不可以改变这个常量的值。( )

9. 构造子必须通过类的一个有效实例来激活。( )

10. 在设计阶段Object Inspector显示被选组件的所有属性。( )

11. 在Delphi IDE中,按住Shift键,同时单击Components Palette上的组件图标,可以在窗体内放置多个同类组件。( )

12. 为减少编程中的错误,用户可以使用Delphi提供的系统函数IsValidIdent检验字符串是否合法。( )

13. 用户如果不在一个完整的事件响应过程添加任何代码,当保存或编译该项目时,该过程将被自动清除。(1)

14. 使用Runtime Packages技术可以将原先独立的可执行文件分解为动态链接库加上小的可执行文件,这样作的好处是所占磁盘空间比一个独立的可执行文件小。( )

15. Delphi和VB一样不能产生真正的可执行代码(本机代码),但是Delphi开发的程序比VB的运行速度快。( )

16. 大多数组件的属性可以在运行时改变,而且,有些只能在运行时刻改变。

17. 对于用户的Delphi工程中创建的窗体及其组件的属性都保存在一个独立的描述文件,即扩展名为DSK的文件中。( )

18. Search菜单的Find Error命令是用来寻找运行时的错误,而不是寻找编译错误。()

19. Enabled属性不适用于非可视组件。( )

20. Delphi采用基于对象的引用模式,即类的每一个变量不保存对象的值,而保存一个引用或一个指针来说明对象存储的内存位置。( )

篇4:Delphi程序员笔试题目选择题

Delphi程序员笔试题目(选择题)

1. 用户开发程序时需要经常在窗体和编辑器窗口之间来回切换,可使用快捷键(),

A、F12和F11

B、F12和F13

C、F12和Ctrl+F12

D、F12和Alt+F12

E、F12和Shift+F12

2. 某函数如下:

Function check(n,k:Integer):Integer;

Var m:Integer;

Begin

Repeat

m:=n mod 10;

n:=n div 10;

K:=k-1

Until k=0;

Check:=m

End;

若调用语句y:=check(3725,3),运行后y值为:()

A、7

B、5

C、2

D、0

3. 以下那个组件不可以由用户输入编辑文本()

A、TEdit

B、TcomboBox

C、TMaskEdit

D、Tlabel

E、TStringGrid

4. 一个对象类可以继承和直接使用它的父类的所有成员,除了:()

A、public域

B、private域

C、protected域和private域

D、protected域和方法

E、private域和方法

5. Delph没有用到的文件类型有()。

A、.frm

B、.pas

C、.dfm

D、.dpr

E、.res

6. Query组件没有Table组件那样的( )属性。

A、DataSource

B、TableName

C、Filtered

D、Database

E、UpdateObject

7. 下面关于属性的论述正确的是()。

A、属性能实现write方法

B、属性能实现read方法

C、属性可以只读或只写

D、属性可以公开或非公开

E、属性不能直接存取

8. 调试程序时,需要执行执行点所在的源代码行,并停留在下一个源代码行。可通过()菜单项进行。

A、Run

B、Step Over

C、Trace Into

D、Trace To Next Source Line

E、Run to Cursor

9. 设a是布尔变量,其它是整型变量,下面正确的赋值语句是( )

A、x=y div 7

B、x:=y:=z+1

C、a:=x=y mod z

D、x+y:=z

E、x+y=a

10. 表达式round(4.2) mod trunc(2.8)的值是( )

A、0

B、1

C、2

D、3

E、4

11. 下列常量定义合法的是( )

A、CONST width=7;

B、CONST case=\\'7\\';

C、CONST 1A=7.9;

D、CONST century=year div 100;

E、CONST 57;

12. 以下运算符中运算优先级最高的是( )

A、+

B、OR

C、>=

D、DIV

E、-

13. 已知a、b、c、d是同类型的简单变量,而且已有互不相同的值,执行下列语句:

b:=a; a:=c; d:=a; d:=b; 后,其值相等的变量是()

A、a,c

B、a,d

C、c,b

D、b,a

E、无法确定

14. 已知有说明Var x:real;下列程序段中的错误为:( )

case x<=2.0 of

0:x:=0;

1:x:=1

end

A、case表达式中有常数

B、case常量和case表达式类型不一样

C、赋值语句两边类型不一致

D、case表达式为关系表达式

E、case语法不规范

15. 以下语句的循环执行次数是( )

x:=37; y:=3

while y<=x do y:=y+y

A、3

B、4

C、5

D、6

E、0

16. 程序 For I:=1 to 5 do

for j:=2 to I do

writeln(\\'*\\');

输出的\\'*\\'个数为( )

A、5

B、10

C、15

D、25

E、30

17. 下列函数头合法的是( )

A、function total(x:real);

B、procedure ab(a,b:real):real;

C、procedure sum;

D、function f(var f:real):integer;

E、procedure FontListBoxKeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState;);

18. 已知函数如下:

function f(n:integer):integer;

begin

if n=0 then f:=0

else if n>0 then f:=f(n-2)

else f:=f(n+3)

end;

则调用f(5)的值是( )

A、0

B、1

C、-1

D、-2

E、2

19. 下列类型中合法的是( )

A、TYPE a=10..10;

B、TYPE b=10..5;

C、TYPE c=0..SQRT(10);

D、TYPE d=10.0..20.0;

E、TYPE e=random(9)..1

20. 已知 Var a:array[\\'a\\'..\\'e\\',1..4,boolean] of real;

则数组a中包含的元素的个数为()

A、5

B、20

C、40

D、11

E、22

21. 已知 Var a:array[1..10] of integer;

k,I:integer;

程序段:

k:=1;

for I:=1 to 10 do

if a[i]>a[k] then

k:=I;

writeln(a[k]);

执行后输出的是( )

A、数组中的平均值

B、数组中的最大值

C、数组中的最小值

D、数组中的总和

E、无法确定

22. 已知Var f:file of integer;则f所代表的文件是( )

A、ASCII码文件

B、二进制文件

C、文本文件

D、存放整数的文本文件

E、HTML文件

23. 在VCL中( )是TDBListBox的父类

A、TCustomListBox

B、TListBox

C、TDBDataset

D、TDatabase

E、TDBEdit

24. 为让控件显示弹出式提示框文字,需用到控件的()属性

A、Handle

B、Hint

C、ShowHint

D、Showing

E、Visible

25. 发生在鼠标左键单击控件时的事件是()

A、OnMouseDown

B、OnMouseUp

C、OnClick

D、OnDbClick

E、OnEnter

26. 下列值中不是FormStyle属性的.可能值的是( )

A、fsNormal

B、fsMIDChild

C、fsMIDForm

D、fsStayOnTop

E、fsDeskTop

27. 使用Delphi多线程的优点是( )

A、程序运行速度加快

B、不需要考虑同步访问共享资源与内存

C、程序编写更简单

D、可以在后台运行线程

E、不会是Windows出错

28. 有多种方法可以在OLE文档接收器中放置对象,但不包括( )

A、使用特定的菜单命令嵌入对象

B、从剪贴板粘贴对象,来建立新嵌入对象

C、从剪贴板粘贴-链接对象,来建立新嵌入对象

D、由服务器生成的文件中建立新对象,

E、通过ODBC接口,传递对象29. 用于异常处理的关键字不包括( )

A、try

B、except

C、finally

D、raise

E、error

30. 以下说法不正确的是( )

A、VCL组件是Delphi最有效和最有用的组件

B、COM是OLE和ActiveX的基础

C、COM对象可用于任何Windows编程环境

D、VCL组件是COM对象

E、典型的COM对象包含在扩展名为.DLL或.OCX的文件中

31. Delphi中取值范围0到255的数据类型是()

A、ShortInt (-128~127)

B、Byte 0~255

C、SmallInt -32768~32767

D、Real

E、Word

32. 以下关于事件的说法不正确的是( )

A、不一定要响应某个组件所定义的所有事件

B、多个组件可以共享同一个事件处理程序

C、根据需要可以响应任何组件的事件

D、单击Object Inspector中的事件处理程序名,Code Editor将自动进入该事件的代码段。

E、事件的Sender参数是用来决定哪个组件产生了此事件

篇5:it笔试题目

1、有一个名人和很多平民在一块,平民都认识这个名人,但是这个名人不认识任何一个平民,任意两个平民之间是否认识是未知的,请设计一个算法,快速找个这个人中的那个名人。 已知已经实现了一个函数 bool know(int a,int b) 这个函数返回true的时候,表明a认识b,返回false的时候表明a不认识b。

思路:首先将n个人分为n/2组,每一组有2个人,然后每个组的两个人调用这个know函数,假设为know(a,b),返回true的时候说明a认识b,则a肯定不是名人,a可以排除掉了,依次类推,每个组都调用这个函数依次,那么n个人中就有n/2个人被排除掉了,数据规模将为n/2。同理在剩下的n/2个人中在使用这个方法,那么规模就会将为n/4,这样所有的遍历次数为n/2+n/4+n/8+........ 这个一个等比数列,时间复杂度为o(n)。

2、进程切换需要注意哪些问题?

保存处理器PC寄存器的值到被中止进程的私有堆栈; 保存处理器PSW寄存器的值到被中止进程的私有堆栈; 保存处理器SP寄存器的值到被中止进程的进程控制块;

保存处理器其他寄存器的值到被中止进程的私有堆栈; 自待运行进程的进程控制块取SP值并存入处理器的寄存器SP; 自待运行进程的私有堆栈恢复处理器各寄存器的值;

自待运行进程的私有堆栈中弹出PSW值并送入处理器的PSW; 自待运行进程的私有堆栈中弹出PC值并送入处理器的PC。

3、输入一个升序数组,然后在数组中快速寻找两个数字,其和等于一个给定的值。

这个编程之美上面有这个题目的,很简单的,用两个指针一个指向数组前面,一个指向数组的后面,遍历一遍就可以了。

4、判断一个自然数是否是某个数的平方。当然不能使用开方运算。

方法1:

遍历从1到N的数字,求取平方并和N进行比较。

如果平方小于N,则继续遍历;如果等于N,则成功退出;如果大于N,则失败退出。

复杂度为O(n^0.5)。

方法2:

使用二分查找法,对1到N之间的数字进行判断。

复杂度为O(log n)。

方法3:

由于

(n+1)^2

=n^2 + 2n + 1,

= ...

= 1 + (2*1 + 1) + (2*2 + 1) + ... + (2*n + 1)

注意到这些项构成了等差数列(每项之间相差2)。

所以我们可以比较 N-1, N - 1 - 3, N - 1 - 3 - 5 ... 和0的关系。

如果大于0,则继续减;如果等于0,则成功退出;如果小于 0,则失败退出。

复杂度为O(n^0.5)。不过方法3中利用加减法替换掉了方法1中的乘法,所以速度会更快些。

例如:3^2 = 9 = 1 + 2*1+1 + 2*2+1 = 1 + 3 + 5

4^2 = 16 = 1 + 2*1 + 1 + 2*2+1 + 2*3+1

int square(int n)

{

int i = 1;

n = n - i;

while( n >0 )

{

i += 2;

n -= i;

}

if( n == 0 ) //是某个数的平方

return 1;

else //不是某个数的平方

return 0;

}

篇6:it笔试题目

一、算法设计

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、为分析用户行为,系统常需存储用户的一些query,但因query非常多,故系统不能全存,设系统每天只存m个query,现设计一个算法,对用户请求的query进行随机选择m个,请给一个方案,使得每个query被抽中的概率相等,并分析之,注意:不到最后一刻,并不知用户的总请求量。

思路:如果用户查询的数量小于m,那么直接就存起来。如果用户查询的数量大于m,假设为m+i,那么在1-----m+i之间随机产生一个数,如果选择的是前面m条查询进行存取,那么概率为m/(m+i),如果选择的是后面i条记录中的查询,那么用这个记录来替换前面m条查询记录的概率为m/(m+i)*(1-1/m)=(m-1)/(m+i),当查询记录量很大的时候,m/(m+i)== (m-1)/(m+i),所以每个query被抽中的概率是相等的。

3、C++ STL中vector的相关问题:

(1)、调用push_back时,其内部的内存分配是如何进行的?

(2)、调用clear时,内部是如何具体实现的?若想将其内存释放,该如何操作?

vector的工作原理是系统预先分配一块CAPACITY大小的空间,当插入的数据超过这个空间的时候,这块空间会让某种方式扩展,但是你删除数据的时候,它却不会缩小。

vector为了防止大量分配连续内存的开销,保持一块默认的尺寸的内存,clear只是清数据了,未清内存,因为vector的capacity容量未变化,系统维护一个的默认值。

有什么方法可以释放掉vector中占用的全部内存呢?

标准的解决方法如下

template < class T >

void ClearVector( vector< T >& vt )

{

vector< T >vtTemp;

veTemp.swap( vt );

}

事实上,vector根本就不管内存,它只是负责向内存管理框架acquire/release内存,内存管理框架如果发现内存不够了,就malloc,但是当vector释放资源的时候(比如destruct), stl根本就不调用free以减少内存,因为内存分配在stl的底层:stl假定如果你需要更多的资源就代表你以后也可能需要这么多资源(你的list, hashmap也是用这些内存),所以就没必要不停地malloc/free。如果是这个逻辑的话这可能是个trade-off

一般的STL内存管理器allocator都是用内存池来管理内存的,所以某个容器申请内存或释放内存都只是影响到内存池的剩余内存量,而不是真的把内存归还给系统。这样做一是为了避免内存碎片,二是提高了内存申请和释放的效率――不用每次都在系统内存里寻找一番。

二、系统设计

正常用户端每分钟最多发一个请求至服务端,服务端需做一个异常客户端行为的过滤系统,设服务器在某一刻收到客户端A的一个请求,则1分钟内的客户端任何其它请求都需要被过滤,现知每一客户端都有一个IPv6地址可作为其ID,客户端个数太多,以至于无法全部放到单台服务器的内存hash表中,现需简单设计一个系统,使用支持高效的过滤,可使用多台机器,但要求使用的机器越少越好,请将关键的设计和思想用图表和代码表现出来。

三、求一个全排列函数:

如p([1,2,3])输出:

[123]、[132]、[213]、[231]、[321]、[323]

求一个组合函数

如p([1,2,3])输出:

[1]、[2]、[3]、[1,2]、[2,3]、[1,3]、[1,2,3]

这两问可以用伪代码。

篇7:it笔试题目

1、对于如下程序:

#include

using namespace std;

class A

{

public:

A

{

cout<<“A”<

}

};

int main(void)

{

A a[4], b,*p;

}

会输出多少个A?( C )

A、2 B、3 C、5 D、6

p只是一个对象指针,并没有指向一个对象的内存空间,所以没有调用构造函数。

2、头文件中的 ifndef/define/endif 有什么作用?

答:防止该头文件被重复引用,避免变量、类型等被重新定义。

3、const 有什么用途?(请至少说明两种)

答:(1)可以定义 const 常量。

(2)const可以修饰函数的参数、返回值,甚至函数的定义体。被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。

4、如下的字符串函数,用于生存一个字符串 ”连接号码异常” ,并返回它的指针

char* strfun()

{

char str[20];

strcpy(str, “连接号码异常”);

printf(“%s \\n”, str); //printf语句1

return str;

}

void main()

{

char *pstr = strfun();

printf(“%s \\n”, pstr); //printf语句2

}

问题1 : printf语句1和printf语句2哪个能在屏幕上正在打印出来?

问题2 : 如果不能正常在屏幕上打印出字符串,请说明原因。

问题3 : 如果不修改strfun的声明,请问该如何修改上述程序的错误。

答:

问题1:语句1可以正常打印,语句2不能正常打印;

问题2:语句2使用的指针所指向的内存空间str[20],在函数strfun返回时已经被释放了;

问题3:可以将函数strfun中的语句char str[20];改为char *str = new char[20];

5、下面是交换两个double型数据的函数,

void swap( double* p1, double* p2 )

{

double *p;

*p = *p1;

*p1 = *p2;

*p2 = *p;

}

void main()

{

double a = 0.1;

double b = 0.2;

swap( &a, &b );

}

请找出上述代码的错误,指出错误的原因,并改正。

答:函数swap中混淆了double型指针与double型变量的差别,对于一个未初始化的指针访问其内存空间是非常危险的。对swap函数修改如下:

void swap( double* p1, double* p2 )

{

double p;

p = *p1;

*p1 = *p2;

*p2 =p;

}

6、在电信业务的后台处理程序中,经常会涉及到处理字符串,除了用char *处理字符串之外,C++还为我们提供了封装了的字符串类string,其本质也是用一个动态数组来保存字符串,类String的原型为:

class String

{

public:

String(const char *str = NULL); // 普通构造函数

String(const String &other); // 拷贝构造函数

~String(void); // 析构函数

String & operate =(const String &other); // 赋值函数

private:

char *m_data; // 用于保存字符串

};

请编写String的上述4个函数普通构造函数、拷贝构造函数、析构函数和赋值函数。

代码如下:

class String

{

private:

char *m_data;

public:

String();

String(const char *str = NULL);

String(const String &other);

~String(void);

String & operator =(const String &other);

};

String::String()

{

m_data = NULL;

}

String::String(const char *str = NULL) //带一个指针的普通构造函数

{

if(str == NULL)

{

m_data = new char[1];

assert(m_data != NULL);

*m_data = '\\0';

}

else

{

int length=strlen(str);

m_data = new char[length+1];

assert(m_data != NULL);

strcpy(m_data,str);

}

}

String::String(const String &other) //拷贝构造函数

{

m_data = new char[other.length+1];

assert(m_data != NULL);

strcpy((*this).m_data,other.m_data);

}

String::~String(void) //析构函数

{

if(m_data != NULL)

{

delete m_data;

m_data = NULL;

}

}

String & String::operator=(const String &other) //赋值函数

{

if(&other != this)

{

delete [](*this).m_data;

(*this).m_data = new char[other.length+1];

assert((*this).m_data != NULL);

strcpy((*this).m_data,other.m_data);

}

}

篇8:it笔试题目

1、对于一个内存地址是32位、内存页是8KB的系统。0X0005F123这个地址的页号与页内偏移分别是多少。

2、如果X大于0并小于65536,用移位法计算X乘以255的值为: (X<<8)-X

X<<8-X是不对的,因为移位运算符的优先级没有减号的优先级高,首先计算8-X为0,X左移0位还是8。

3、一个包含n个节点的四叉树,每个节点都有四个指向孩子节点的指针,这4n个指针中有 3n+1 个空指针。

4、以下两个语句的区别是:第一个动态申请的空间里面的值是随机值,第二个进行了初始化,里面的值为0

int *p1 = new int[10];

int *p2 = new int[10]();

5、计算机在内存中存储数据时使用了大、小端模式,请分别写出A=0X123456在不同情况下的首字节是,大端模式:0X12 小端模式:0X56 X86结构的计算机使用 小端 模式。

一般来说,大部分用户的操作系统(如windows, FreeBsd,Linux)是小端模式的。少部分,如MAC OS,是大端模式 的。

6、在游戏设计中,经常会根据不同的游戏状态调用不同的函数,我们可以通过函数指针来实现这一功能,请声明一个参数为int *,返回值为int的函数指针:

int (*fun)(int *)

7、下面程序运行后的结果为:to test something

char str[] = “glad to test something”;

char *p = str;

p++;

int *p1 = static_cast(p);

p1++;

p = static_cast(p1);

printf(“result is %s\\n”,p);

8、在一冒险游戏里,你见到一个宝箱,身上有N把钥匙,其中一把可以打开宝箱,假如没有任何提示,随机尝试,问:

(1)恰好第K次(1=

(2)平均需要尝试多少次。

这个就是求期望值 由于每次打开宝箱的概率都是1/n,则期望值为: 1*(1/n)+2*(1/n)+3*(1/n)+......+n*(1/n) = (n+1)/2

笔试题目

奇虎笔试题目

思科笔试题目

网通笔试题目

DBA笔试题目

长虹笔试题目

盛大笔试题目

光大银行笔试题目

金地地产笔试题目

程序类笔试题目

Delphi笔试题目(精选8篇)

欢迎下载DOC格式的Delphi笔试题目,但愿能给您带来参考作用!
推荐度: 推荐 推荐 推荐 推荐 推荐
点击下载文档 文档为doc格式
点击下载本文文档