在程序设计中的 Function(有时候翻译函式)类似数学中的 Function(函数)
Function 实现用文字和符号表示电脑的指令,是现代程序设计中最基本也最不可或缺的元素
在数学中,我们可以用一个自订名称来表示某些计算式,或者也可以说把一段计算式命名成自订的代号
例如:
设 f(x)=8x+7
在这行函数的定义之後,只要出现 f
就是在表示 8x+7
这段计算,且 x
会被换成括号中的数字
例如只要看到 f(2)
,我们就知道是在表示8⋅2+7
在数学中,Function 可以用来表示一段计算,在程序设计中,则是用来表示一段程序码
这段程序码(也就是这个 Function 的定义)的功能可以是任何的动作(上传、下载、删除、暂停、播放等)或是运算
运算也不只局限於数学领域的计算,只要是可以存在电脑中的资料(数字、文字、图像...),我们都可以对它进行某些操作
在程序设计中,使用函式称为呼叫(Call)
参数(Parameter) 是函式定义时,规定要传递给这个函数的资料的名称
引数(Argument) 是函式被呼叫时,实际传递给函式的资料
以数学中的情况为例:
设 f(x)=8x+7, 未知数 k=10
f(2)=8⋅2+7=23
f(k)=10⋅2+7=27
上面例子中的 x
在程序设计中叫做 参数,2
和 k
是引数
在数学中,所有函数都有参数,但在程序语言中,函式是可以没有参数的
指函式执行的结果,以数学中情况为例:
设 f(x)=8x+7
f(2)=8⋅2+7=23
这里的 23 就是 函数 f(x)
在 x=2
时的回传值
在数学所有函数都代表某一个值,但在程序语言中函式可以没有回传值(例如函式代表的是执行某些动作的时候)
所以程序中的所有 Function 都要自己定义?当然不是
数学中有很多前人已经定义好的函数,像是 sin, cos 这些函数,我们不用再写一次定义就可以直接拿来用,有时候甚至不用知道它们的定义,只要知道怎麽用就好
在程序设计领域也是,这些在程序语言中有很多已经定义好、我们可以直接拿来用的函式,这些函式称为 Built-in Functions(内建函式),不同的语言内建的函式不太一样,相同功能的函式在不同语言中可能会有不同的名字
如果要让程序码可以执行,必须写成:
int main(){
<要执行的内容>
⋮
<要执行的内容>
return 0;
}
main()
是这个程序的主函式,也就是这个程序第一个执行的函式
大括号 {}
中的范围叫做程序码区块(Block),这个区块中的内容是我们对 main()
的定义,也就是说我们写在大括号里面的内容,就是我们希望程序去做的指令
这里的 int
和 return 0;
代表的是回传整数和回传0,虽然大部分情况下不影响程序执行所以可以省略,不过习惯上都会这样写
至於这些东西到底在干嘛,我之後在写一篇跟各位解释(挖坑+1)
内建函式的定义会被储存在叫 Library(函式库) 的档案,除了函式,函式库中还包含一些常数和资料格式的定义
内建函式数量庞大,所以依照功能的相关性,分别储存在多个不同的函式库
因为同一个程序不会用到所有函式库,在程序码的开头,要先引入函式库,才能让编译器知道接下来的程序码会用到哪些函式库
在C语言中引入函式库的方法是 #include <函式库名称>
最常使用的函式库是 stdlib.h
(标准函式库) 和 stdio.h
(标准输入/输出),和前面的内容放在一起就会是:
#include <stdio.h>
#include <stdlib.h>
int main(){
return 0;
}
上面这段就是C语言最常见的基本格式
在程序码里面,空格和换行的规则其实和英文一样
int main(){
return 0;
}
int main(){
return 0;
}
int
main(){
return
0
;
}
其实都符合语法,但习惯字和字间只空一格(第一种写法) int main () {
return 0;
}
int main()
{
return 0;}
int main(){return 0;}
int main
(
)
{
return 0;
}
但习惯上:
int main()
}
自己一行,左大括号{
则不一定
int main(){
return 0;
}
int main()
{
return 0;
}
以上两种都有人用#include <>
在符号、字之间可以空格但不能换行.
的左右不能有空格
#include<stdio.h>
#include <stdio.h>
# include < stdio.h >
挖坑清单:
main()
前面的 int
,和最後一行的 return 0;
元件客制化(LinerLayout和Button) 前几天讲了EditText和Button,不过这...
前言 这篇文章将会介绍 React Hooks,Hook 是 React 16.8 中增加的新功能。...
A structured query language (SQL) is a language th...
相较於资料湖,另一个更常见的大数据储存系统是 — 资料仓储。和资料湖一样,资料仓储也用来储存巨量资料...
前言与动机 在提到声音转换的时候,我们第一个会想到的可能就像是柯南那样 (他会把他叔叔麻醉然後用变声...