千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > C语言面试题之函数

C语言面试题之函数

来源:千锋教育
发布人:wjy
时间: 2022-06-07 15:08:00 1654585680

  如何理解库函数

  库是已经写好的、成熟的、可复用的代码。每个程序都需要依赖很多底层库,不可能每个人的代码从零开始编写代码,因此库的存在具有非常重要的意义。在我们的开发的应用中经常有一些公共代码是需要反复使用的,就把这些代码编译为库文件。库可以简单看成一组目标文件的集合,将这些目标文件经过压缩打包之后形成的一个文件。像在Windows这样的平台上,最常用的c语言库是由集成按开发环境所附带的运行库,这些库一般由编译厂商提供

C语言面试题之函数

  如何理解指针作为函数参数的输入和输出特性

  输入特性:主调函数分配空间 背调函数使用该空间

  输出特性:被调用分配空间 主调函数使用该空间

  函数名的意义

  在c语言中 函数名代表的是函数的入口地址

  函数的形参和实参的区别

int data1=0;

int data2=0;

int my_add(int x, int y)

{

  return x+y;

}

int main()

{

  my_add(data1,data2);

}

  形参:在函数定义时候定义形参(例如:x,y),一般由形参类型和形参名组成。在定义函数是不会为形参开辟空间,只有在函数调用时系统才会为形参开辟空间

  实参:在函数调用时传递给函数的实际参数(例如:data1,data2),他在函数调用前就存在的

  函数的作用

  将为同一功能服务的代码,封装在一起,通过函数名直接调用,提高代码的重用

  函数的定义与函数的声明的区别

  函数定义:是指对函数功能的确立,包括指定函数名、函数类型、形参及其类型、函数体等,它是一个完整的、独立的函数单位。

  函数的声明:是把函数的名字、函数类型以及形参的个数、类型和顺序(注意,不包括函数体)通知编译系统,以便在对包含函数调用的语句进行编译时,据此对其进行对照检查(例如函数名是否正确,实参与形参的类型和个数是否一致)

  从定义的角度为函数分类

  库函数(c语言库)、自定义函数、系统调用(内核提供给用户的函数接口)

  从有无参数的角度对函数分类

  无参的函数:不能将函数外部的数据 传递 给函数内部

  有参的函数:通过参数 将函数外部的数据 传递到函数内部

  (参数:函数外部数据 到 函数内部的 桥梁)

  普通变量作为函数的参数特点

  函数内部可以借助函数的参数使用外部变量的值,但是函数内部不能通过形参间接修改外部变量的值(单向传递中的值传递)

  一维数组作为函数的参数的特点

  数组作为函数的参数,会被优化成数组元素指针变量,在调用函数的时候实参只需要传递数组的首元素地址就可以操作数组的所有元素

  在32位平台Void func(int arr[5]){}则sizeof(arr)的结果

  4字节

  二维数组作为函数的特点

  二维数组作为函数的参数会被优化成数组指针,函数内部可以借助该数组指针操作二维数组的所有元素。在操作数组元素上该数组指针等价于函数外部的二维数组名

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT