[其它考试]C语言面试题汇总.docVIP

  • 12
  • 0
  • 约1.85万字
  • 约 38页
  • 2018-02-28 发布于浙江
  • 举报
[其它考试]C语言面试题汇总

7.?printf (“%d%d\n”,++n, power(2,n)); 其中power(2,n)为实现一定功能的函数 如 2^n 。 ??? 请问这种表示方法有什么潜在的问题? ?答案:编译器的不同,对++n 和power(2,n)处理的先后顺序不一样,形成二义性,造成程 序的移植性差,因此最好把++n 写在printf函数外面,以消除二义性。 printf (s); 请问这样的语句有没有问题?(s为一指向有效字符串的指针) ?? 答案:没有%的话,可以这样表达,如果有%在s中的话,有意想不到的输出结果。 9.?两段代码共存于一个文件,编译时有选择的编译其中的一部分,请问如何实现? 答案:有两种简单的办法可以实现: 在源码中使用条件编译语句,然后在程序文件中定义宏的形式来选择需 要的编译代码。 在源码中使用条件编译语句,然后在编译命令的命令中加入宏定义命令 来实现选择编译。 10.数据结构指针传给函数,函数能访问数据单元,但不能修改实际的内容,如何实现? 答案:定义为指向常量的指针,这样指针所指的数据结构中的内容就不会被改变。如: ??????? const 类型 *p 或 类型 const *p??? 11.?在头文件中定义静态变量,可能产生什么问题? 答案:在使用了该头文件的每个c程序文件中都单独存在一个该静态变量,这样造成空间的浪费并且很容易引起错误。因此建议不要在

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档