传值调用和引用调用
函数调用时基本的参数传递方式有两种:传值调用和引用调用。
(1) 传值调用
信息传递是单向的,只能将实参的值传递给形参,而形参不能再将值传递给实参。
实参可以是常量(表达式),也可以是变量(数组元素)。
例: int sum(int x,int y) { (形式参数)
int z;
z=x+y ;
return z;}
函数调用时:sum(2, 3) ; (实际参数)
(实际参数)可以传递(形式参数),(形式参数)可以不能传递(实际参数)
(2) 引用调用(传地址调用)
在这种方式下,可以认为形参名实际上是实参的别名,被调函数中对形参的访问和修改实
际上就是对实参的访问和修改。因此客观上可以实现双向传递。
.因此只能是变量(数组元素),而不能是常量(表达式)。
例: void swap(int &x,int &y) { (形式参数)
int temp ;
temp=x ; x=y ; y=temp;
函数调用时: swap(a, b) ; (实际参数)
(形式参数) 可以相互传递(实际参数),实际必须是变量
2.2 编译过程
1、词法分析
任务:对源程序从前到后(从左到右)逐个字符地扫描,从中识别出一个个“单词”符号。
“单词”符号是程序设计语言的基本语法单位,如关键字(保留字)、标识符、常数、运算符和
标点符号、左右括号等。
2、 语法分析