1. 函数是什么?
在我们过往的学习中,在数学上我们常见到函数的概念。但是你了解C语言中的函数吗?
在维基百科中对函数的定义:子程序子程序是一个大型程序中的某部分代码,由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代码,具备相对的独立性。
一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被记成为软件库。
这就是一个简单求字符串长度的函数.
2. C语言中的函数分类
1. 库函数
在这里我们可以看看下面的网址,这是一个不错的查询各个库函数的工具.
简单总结,C语言常用的库函数都有:IO函数
字符串操作函数
字符操作函数
内存操作函数
时间 / 日期操作函数
数字函数
其他库函数
这是我们从网址上简单提取的
这里我们简单运用一下这个库函数,记住每个库函数都是需要引用一个头文件我们也可以把它返回到ret中
其实 memset —就是设置内存
大家后面可以自己搜索其他库函数运用一下。
2. 自定义函数
但是不一样的是这些都是我们自己来设计,这给程序员一个很大的发挥空间。
要知道它是有返回类型,函数名,函数参数,函数体。
我们举个例子:
写一个函数可以找出两个整数中的最大值。
这个就不需要我说了吧
这样也可以,这里我们运用了三目操作符。
这里的两个void
一个是函数调用完后什么都不需要返回
另一个是这个函数没有参数,在调用的时候,不能传参。
再举个例子:
写一个函数可以交换两个整形变量的内容
这是一个不错的思路,但是我们是需要在函数里来进行交换
咦,为什么会出现这种情况呀?
这个地址都不对于
这是因为:当函数调用的时候,实参传递给形参,这时形参是实参的一份临时拷贝,对形参修改不影响实参。
其实就是创建的形参是独立的空间,而且地方都不对,无论你怎么修改,最后向我们表现出来的数都是不变的。
那我们该怎么优化呢?
那么我们还不如直接干指针,找到对于的地址修改。
看看这不就可以了
3. 函数的参数
1. 实际参数(实参)
列如这样,可以是常数,表达式,函数也可以。
2. 形式参数(形参)
就是临时的。
4. 函数的调用
1. 传值调用
函数的形参和实参分别占有不同内存块,对形参的修改不会影响实参。
2. 传址调用
这就是直接传地址了。
练习
俗话说光听不练啥也不会
1. 写一个函数可以判断一个数是不是素数
素数 它喵的,今年高考数学有个题就提到了。
除了1和本身,其他的整数都不能被整除的数就叫素数。
但是我们为什么要应用sqrt(开方)库函数呢?
回去问你初中老师去吧
这里要注意是<=
比如9 不包括3的话,就玩犊子了
三级标题
我连条件都写了,这叫啥,这是保姆级讲解。
这是正常操作
这个是学以至用,不错
看看这个优化的就不错,说明细节的重要性
乌云总会过去,当太阳出来的时候,你是否做好了准备?
守得云开见月明
转载:https://blog.csdn.net/m0_73920510/article/details/127928274