Difference between revisions of "ES101 - Lesson 8 : Functions with Pass-By-Reference"

From Embedded Systems Learning Academy
Jump to: navigation, search
(Created page with "== Objective == You will learn the basics of pointers, which are used in combination with the functions. Pass-by-value type of functions pass just the value of the variables ...")
(No difference)

Revision as of 18:08, 16 October 2012

Objective

You will learn the basics of pointers, which are used in combination with the functions.

Pass-by-value type of functions pass just the value of the variables into a function, but with a simple change, you can use functions that accept pass-by-reference type of variables. This is a very powerful concept that will allow your functions to change the values outside of its scope.

Pass By Reference

Pass by reference provides a mean to provide input to functions by specifying a memory location, which allows the function to modify caller's variables. In other words, instead of just merely giving a value, you pass the pointer of variable(s), and the pointer points to the memory address where the data is stored. The values are then accessed by using the * operator inside the function, which is called the dereference operator. Students often get confused with & and * symbols. & refers to the memory address whereas as * refers to a value stored at this memory address.