|

Functions
either return a value or they return void, meaning
they return nothing. A function that adds two integers
might return the sum, and thus would be defined
to return an integer value. A function that just
prints a message has nothing to return and would
be declared to return void.
Functions
consist of a header and a body. The header consists,
in turn, of the return type, the function name,
and the parameters to that function. The parameters
to a function allow values to be passed into the
function. Thus, if the function were to add two
numbers, the numbers would be the parameters to
the function. Here’s a typical function header:
int
Sum(int a, int b)
A
parameter is a declaration of what type of value
will be passed in; the actual value passed in by
the calling function is called the argument. Many
programmers use these two terms, parameters and
arguments, as synonyms. Others are careful about
the technical distinction. This book will use the
terms interchangeably.
The
body of a function consists of an opening brace,
zero or more statements, and a closing brace. The
statements constitute the work of the function.
A function may return a value, using a return statement.
This statement will also cause the function to exit.
If you don’t put a return statement into your function,
it will automatically return void at the end of
the function. The value returned must be of the
type declared in the function header.
Listing
2.5 demonstrates a function that takes two integer
parameters and returns an integer value. Don’t worry
about the syntax or the specifics of how to work
with integer values (for example, int x) for now;
that is covered in detail in unit 3.
Listing
2.5. FUNC.CPP demonstrates a simple function.
1:
#include <iostream.h>
2:
int Add (int x, int y)
3:
{
4:
5:
cout << "In Add(), received " << x <<
" and " << y << "\n";
6:
return (x+y);
7:
}
8:
9:
int main()
10:
{
11:
cout << "I’m in main()!\n";
12:
int a, b, c;
13:
cout << "Enter two numbers: ";
14:
cin >> a;
15:
cin >> b;
16:
cout << "\nCalling Add()\n";
17:
c=Add(a,b);
18:
cout << "\nBack in main().\n";
19:
cout << "c was set to " << c;
20:
cout << "\nExiting...\n\n";
21:
return 0;
22:
}
OUTPUT:
I’m
in main()!
Enter
two numbers: 3 5
Calling
Add()
In
Add(), received 3 and 5
Back
in main().
c
was set to 8
Exiting...
The
function Add() is defined on line 2. It takes two
integer parameters and returns an integer value.
The program itself begins on line 9 and on line
11, where it prints a message. The program prompts
the user for two numbers (lines 13 to 15). The user
types each number, separated by a space, and then
presses the Enter key. main() passes the two numbers
typed in by the user as arguments to the Add() function
on line 17.
Processing
branches to the Add() function, which starts on
line 2. The parameters a and b are printed and then
added together. The result is returned on line 6,
and the function returns.
In
lines 14 and 15, the cin object is used to obtain
a number for the variables a and b, and cout is
used to write the values to the screen. Variables
and other aspects of this program are explored in
depth in the next chapters.
|