devxlogo

Functions and parameters

Functions and parameters

Question:
I know this may sound like a dorky question, but can you explain to me?as if I were a little kid?what are functions, and why and how are parameters used?

Answer:
Well, okay son.

In the first days of programming, programs simply started at the top and ended at the bottom. Although there could be branching in the middle, everything happened within a single chunk of code. There was no reason to do otherwise.

Since then, programs have become infinitely more complex. The branching I mentioned before could become mind boggling. It became necessary to break up code into parts to help better organize program code.

This is where functions come in. A function should perform one logically defined task, and it makes a large program much easier to understand.

For example, say you write a program that accesses a file. Your main routine should deal with the logic of what you are doing to that file. If you need code to open the file, for example, that code is not really related to the program’s higher level logic, and so is a good candidate for being placed in a function. This also allows you to call that function from several places in your program, even though the code within the function needs to be placed in your application’s EXE file only once.

Parameters allow you to send additional information to a function. For example, you might need to send the name of a file to a function that opens a file. The code that calls the function could look something like this:

   open(“c:filename.ext”);
And the function could look something like this:
int open(char *sFilename){   /* Open the file specified by sFilename */   …}
The sFilename argument becomes a variable within the function that contains the value passed to the function.
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist