循环链表,用取余操作做14.不能做 switch的参数类型是: switch 的参数不能为实型。
1.写出判断 ABCD 四个表达式的是否正确 若正确 写出经过表达式中 a 的值3 分int a 4Aa a B a a C a aD a aa 答:C 错误,左侧不是一个有效变量,不能赋值,可改为a a改后答案依次为 91010112.某 32 位系统下 C程序,请计算 sizeof 的值5 分.char str “http://www.ibegroup.com/”char p str int n 10请计算sizeof str ?(1)sizeof p ?(2)sizeof n ?(3)void Foo char str100请计算sizeof str ?(4)void p malloc 100 请计算sizeof p ?(5)答:(1)17 (2)4 (3) 4 (4)4 (5)43. 回答下面的问题. 4 分1.头文件中的 ifndef/define/endif 干什么用?预处理答:防止头文件被重复引用2. #i nclude 和 #i nclude “filename.h” 有什么区别?答:前者用来包含开发环境提供的库头文件,后者用来包含自己编写的头文件。
3.在 C 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”声明?答:函数和变量被 C编译后在符号库中的名字与 C 语言的不同,被 extern quotCquot修饰的变量和函数是按照 C 语言方式编译和连接的。
由于编译后的名字不同,C程序不能直接调用 C 函数。
C提供了一个 C 连接交换指定符号 extern“C”来解决这个问题。
4. switch中不允许的数据类型是答:实型4. 回答下面的问题6 分1.Void GetMemorychar p int nump char mallocnumvoid Testvoidchar str NULLGetMemoryampstr 100strcpystr quothelloquotprintfstr请问运行 Test 函数会有什么样的结果?答:输出“hello”2. void Testvoidchar str char malloc100strcpystr “hello”freestrifstr NULLstrcpystr “world”printfstr请问运行 Test 函数会有什么样的结果?答:输出“world”3. char GetMemoryvoidchar p quothello worldquotreturn pvoid Testvoidchar str NULLstr GetMemoryprintfstr请问运行 Test 函数会有什么样的结果?答:无效的指针,输出不确定5. 编写 strcat 函数6 分已知 strcat 函数的原型是 char strcat char strDest const char strSrc其中 strDest 是目的字符串,strSrc 是源字符串。
(1)不调用 C/C 的字符串库函数,请编写函数 strcat答:VC 源码:char __cdecl strcat char dst const char srcchar cp dstwhile cp cp / find end of dst /while cp src / Copy src to end of dst /return dst / return dst /(2)strcat 能把 strSrc 的内容连接到 strDest,为什么还要 char 类型的返回值?答:方便赋值给其他变量6.MFC 中 CString 是类型安全类么?答:不是,其它数据类型转换到 CString 可以使用 CString 的成员函数 Format 来转换7.C中为什么用模板类。
答:1可用来创建动态增长和减小的数据结构(2)它是类型无关的,因此具有很高的可复用性。
(3)它在编译时而不是运行时检查数据类型,保证了类型安全(4)它是平台无关的,可移植性(5)可用于基本数据类型8.CSingleLock 是干什么的。
答:同步多个线程对一个数据类的同时访问9.NEWTEXTMETRIC 是什么。
答:物理字体结构,用来设置字体的高宽大小10.程序什么时候应该使用线程,什么时候单线程效率高。
答:1.耗时的操作使用线程,提高应用程序响应2.并行操作时使用线程,如 C/S 架构的服务器端并发线程响应用户的请求。
3.多 CPU 系统中,使用线程提高 CPU 利用率4.改善程序结构。
一个既长又复杂的进程可以考虑分为多个线程,成为几个独立或半独立的运行部分,这样的程序会利于理解和修改。
其他情况都使用单线程。
11.Windows 是内核级线程么。
答:见下一题12.Linux 有内核级线程么。
答:线程通常被定义为一个进程中代码的不同执行路线。
从实现方式上划分,线程有两种类型: 。
“用户级线程”和“内核级线程” 用户线程指不需要内核支持而在用户程序中实现的线程,其不依赖于操作系统核心,应用进程利用线程库提供创建、同步、调度和管理线程的函数来控制用户线程。
这种线程甚至在象 DOS 这样的操作系统中也可实现,但线程的调度需要用户程序完成,这有些类似 Windows 3.x 的协作式.
上一篇:
黑盒测试(等价类划分)
下一篇:
雍志祥_基于Ajax的BBS网站_论文正文