Linux学习(C语言学习之函数的使用)

C语言的函数在理解和使用中主要从以下几个方面来思考:
什么是函数?
函数的入口参数
函数的返回值
函数具备三要素:
1、函数名 (地址)
2、输入参数
3、返回值
在定义函数时,必须将三要素告诉编译器;
命令:man 3 printf;可以查看关于printf的一些相关信息;
在这里插入图片描述
因为函数的名称本身就是一个地址,所以我们在函数调用的时候完全可以使用指针去调用,只不过我们在定义指针的时候一定要注意要跟函数的入口参数和返回值的类型保持一致;
调用者:一般为主函数;函数名(要传递的数据(实参))
被调者:函数的具体实现;
函数的返回值 函数名 (接收的数据(形参))
传递的过程:实参 传递给 形参
传递的形式:拷贝(按位逐一赋值)
地址传递:调用者让子函数修改自己空间里的值
在这里插入图片描述
上面函数的功能相信大家都很熟悉,就是实现数值的交换,可以看到子函数的入口参数是两个指针,这样主函数在调用的时候只要输入两个地址,子函数就可以直接改变两个地址所表示的内容了。
连续空间的传递:连续的空间我们常见的有两个,1、数组,2、结构体
在结构体参数的传递中指针的传递方式是比较省内存的,我们优先考虑的应该就是指针的方式,当然在数组的传递过程中我们采用的也是指针的方式。
字符空间与非字符空间的区别:结束的标志不同
字符空间的结束标志:存在0x00(1B)
非字符空间的结束标志:可以存在0x00但不是结束的标志
命令:man strlen 可以查看库中关于strlen相关的内容,所以man 库函数函数名,可以查看相关函数在库函数中的内容;
一般我们在对字符空间数据进行处理时采用的方式是逐一处理,框架是:
while(P[i])
{ //数据的处理; i++}

猜你喜欢

转载自blog.csdn.net/weixin_42994525/article/details/82945913