C语言有哪些面试题

发布时间:2021-11-22 15:28:59 作者:iii
来源:亿速云 阅读:393

这篇文章主要介绍“C语言有哪些面试题”,在日常操作中,相信很多人在C语言有哪些面试题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言有哪些面试题”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1、c语言里面关键static的作用是什么?(看到这个问题读者可以自己先思考一下,再看答案)

答案:


        (1)、在函数体中,一个被声明为静态的变量在这一函数被调用过程中维持其值保持不变。

        (2)、在模块内,模块就是你写的".C"文件(在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但是不能被模块外其它函数访问,它相当于一个本地的一个静态全局变量(注意它和非静态全局变量的区别哦)。

        (3)、在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。也就是说,这个函数被限制在声明它的模块本地内使用,不可以在模块外使用。

2、写一个“标准”宏,这个宏输入两个参数并返回较小的一个;同时讲出 # 与  ##的作用区别?

答案:

    

         (1)、第一个问题可以这样来写,注意里面使用了三目运算符:

#define  MIN(x,y)   ((x)<(y)?(x):(y))

         (2)、"#"作用是把宏参数转化为字符串的运算符,而"##"是把两个宏参数连接的运算符:

#define  STR(arg)  #arg    

这里当参数 arg 为  hello ,则宏展开的结果是"hello"

#define  STR(arg)   name_y
#define  STR(arg)   name_##y
#define  STR(arg,arg2)   arg arg2##_##arg2##_arg2  

上面示例中,假设 arg 为  int , arg2 为 a ,则上面宏展开的结果为:

name_y
name_int
inta_a_a 

3、C语言里面关键字sizeof的作用是什么?

答案:

       

        (1)sizeof是在编译阶段处理,且不能被编译为机器码。还有一点,很多人会认为它是一个库函数;它的作用是计算出各种类型变量或者结构所占的字节数:

int a ,sizeof(a)
int *a,sizeof(a)
int a[10],sizeof(a)
int a[0],sizeof(a)
sizeof(void)
sizeof(void *)

上面演示结果:

4
4
40
 0
 1
4

4、请简述用户空间的内存分配及各空间保存的数据类型:

答案:

        (1) 用户空间供为3G,分为:栈空间,堆空间,数据区,代码段。

到此,关于“C语言有哪些面试题”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

推荐阅读:
  1. JavaScript面试题有哪些
  2. 有关Mysql面试题有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

c语言

上一篇:java中单点登录Single Sign On如何实现

下一篇:c语言怎么实现含递归清场版扫雷游戏

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》