C语言面试题(经典全).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言面试题(经典全)

?1.static有什么用途?(请至少说明两种) 1)限制变量的作用域 2)设置变量的存储域(堆,主动分配内存也是堆) ? 1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。???? 2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。???? 3) 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。 ? ? 4.全局变量和局部变量在内存中是否有区别?如果有,是什么区别? 全局变量储存在静态数据库,局部变量在栈 ? ? 6.堆栈溢出一般是由什么原因导致的? ?堆栈溢出一般是循环的递归调用导致的,如果使用的大数据结构的局部变量,也可能导致堆栈溢出。??没有回收垃圾资源导致的是内存泄露最后内存耗尽。 ? ? 20.不能做switch()的参数类型是: switch的参数不能为实型。(只能是int char) ? 9.写出float x 与“零值”比较的if语句。 if(x0.000001x-0.000001)??? ? 3.在c语言库函数中将一个字符转换成整型的函数是atol()吗,这个函数的原型是什么? 函数名: atol 功能: 把字符串转换成长整型数 函数的原型: long atol(const char *nptr); 程序例: #include stdlib.h #include stdio.h int main(void) { long l; char *str = ? l = atol(lstr); printf(string = %s integer = %ld\n, str, l); return(0); } ? ? 1.对于一个频繁使用的短小函数,在C语言中应用什么实现,在C++中应用什么实现? c用宏定义,c++用inline ? ? 8.软件测试都有那些种类? 黑盒:针对系统功能的测试??? 白合:测试函数功能,各函数接口 ? 9.确定模块的功能和模块的接口是在软件设计的那个阶段完成的? 概要设计阶段 ? ? ? 11.unsignedchar *p1; ??? unsigned long *p2;? ??? p1=(unsigned char *)0x801000; ??? p2=(unsigned long *)0x810000; ??? 请问p1+5=?? ; ?????? ??p2+5=?? ; 答:p1+5=0x801005? ; ?????? ????p2+5=0x810014? ; ? ? 1.请问下面程序有什么错误? ?? int a[60][250][1000],i,j,k; ??for(k=0;k1000;k++) ???for(j=0;j250;j++) ????for(i=0;i60;i++) ????? a[i][j][k]=0; 把循环语句内外换一下 (编译的时候没错,运行的时候出错,但这个数组太大,如果放在栈中,还是会溢出,要作为全局变量) ? 2.#defineMax_CB 500 ??? void LmiQueryCSmd(Struct MSgCB * pmsg) ???? { ???? unsigned char ucCmdNum; ???? ...... ??? ????for(ucCmdNum=0;ucCmdNumMax_CB;ucCmdNum++) ????? { ????? ......; ????? } 死循环(unsigned char 0 到 255) ? 3.以下是求一个数的平方的程序,请找出错误: ??? #define SQUARE(a)((a)*(a)) ?? ?int a=5; ??? int b; b=SQUARE(a++);//a被加了2次? a=7,b=25 ? 2、有一个16位的整数,每4位为一个数,写函数求他们的和。 解释: 整数1101010110110111 和? 1101+0101+1011+0111 /* n就是16位的数,函数返回它的四个部分之和 */ char SumOfQuaters(unsigned short n) { ??? charc = 0; ??? inti = 4; ??? do ??? { ??????? c += n 15; ???????n = n 4; ??? }while (--i); ???return c; } ? 3、两个字符串,s,t;把t字符串接到s字符串尾,s字符串有足够的空间存放t字符串 void connect(char *s, char *t, int i) { char *q = t; ch

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档