C语言的世界(七)

前言

你好,C语言(函数)

一、函数(加工厂)

1.函数定义

我第一次听到函数这个是在数学课上,C语言中的函数是指一段可以直接被另一段程序或代码引用的程序或代码。 

在C语言中,我们常常使用函数,比如说printf(输出函数)、scanf(输入函数)等等,这些都是C语言给我们的库函数,而如果我们在需要一个比大小的函数,又该怎么办呢?

#include<stdio.h>
int Compare(int x, int y);//函数使用需要声明!
int main()
{
    int a = 0;
    int b = 0;
    scanf("%d %d", &a, &b);
    int c = Compare(a, b);
    printf("%d", c);
    return 0;
}

int Compare(int x, int y)
{
    int z = (x) > (y) ? x : y;
    return z;
}

 我们可以从上图看到,我创建了一个Compare函数来比较两数大小。

在C语言中,用户可以自己定义函数,用来满足用户的需求。

主函数传实参(实参出现在主调函数中,进入被调函数后,实参变量不能使用。)给子函数的形参(形参出现在子函数定义中,在整个函数体内都可以使用, 离开该函数则不能使用,且只能单向传递),在子函数运行结束后,将结果返回(return )回主函数调用处,主函数中,需设置一个变量接收返回值。(在此程序中,我们设置了c变量)

通俗来讲,C语言函数就像一个加工厂,我们把原材料送入加工厂(子函数),让加工厂加工好后将产品(返回值)送给我们(主函数)。

强调一点:C语言中,函数不可以嵌套定义,并且函数定义语句后面不加函数可以嵌套使用。

函数不可以重名,不可以重复定义,但可以重复声明。

2.被static 修饰的函数

我们在另一个文件中定义一个子函数,运行后可以看到,函数正常被调用。

 

我们来试一下static修饰函数

 

 弹出了警告窗口。

函数被static修饰后,外部链接属性就变成了内部链接属性,所以我们的函数只能在当前源文件使用(图中Compare.c文件),其他源文件无法使用。

3.函数的类型

函数返回值是什么类型,函数就是什么类型。

在上文中,我们返回Z是整型,那么我们的函数便是整型函数。

还有字符型函数、空函数(void)、双精度浮点数函数(double)、单精度浮点数函数(float)等等。

感谢你看到这里,我是一名计算机专业在读的大学生,博文难免有纰漏,希望大家可以指正。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>