Data and Methods

Chapter 2: Data and Methods - The Building Blocks of C Programs

In the previous chapter, we explored the fundamentals of C and its importance. Now, let's delve into the essential building blocks of C programs: data and methods (also known as functions).


2.1 Data - The Foundation


Imagine building a house. Bricks, wood, and concrete are the building materials, just like data is the foundation of C programs. Data represents information that a program works with. C offers various data types to store different kinds of information:

The on and off switches which make up your CPU and GPU act like on or off switches and are called bits, binary digits, and are represented by the binary numbering system. Binary is base 2 with 0 or 1 being the only digits. 0 stands for off or False, 1 for on or True. We group 8 bits together and that is called a byte. We can access single bits but usually only access bytes. 

Each bit can be 0 or 1, eight bits can hold a numeric value of up to 256.

They work like this, the number 4 is written in binary as 1,0,0. The number 7 is 1,1,1.

1,0,0

/     |   \

2^2, 0^2, 0^2

|    |       |

4    0      0

Read from left to right decimal 4.

1,1,1

/    |     \

4     2     1 

|      |     | 

 2^2 2^1 2^0

|      |     | 

4  + 2 + 1 = 7

        Each digit represents a power of 2


Numbers: Integers (int) for whole numbers (e.g., 10, -5), floating-point numbers (float, double) for decimals (e.g., 3.14, -12.5).

Characters: Characters (char) represent single letters or symbols (e.g., 'a', '$').

Text: Strings (arrays of characters) store sequences of characters to form words or sentences (e.g., "Hello, world!").

Logical Values: Boolean (bool) stores either true (1) or false (0).

Here's an example of declaring variables of different data types:


C

int age = 25; // Integer to store age

float pi = 3.14159; // Floating-point number for pi

char initial = 'J'; // Character for an initial

Use code with caution.

2.2 Methods - The Actions

Continuing the house analogy, methods are like the instructions for building your house. In C, methods (or functions) are reusable blocks of code that perform specific tasks. They operate on data to achieve desired results.

Here's a breakdown of methods:

Definition: A method is defined with a return type (what it returns), a name, and optional parameters (data it receives).

Calling: A method is called by its name from another part of the program, often passing data as arguments if needed.

Execution: When called, the method's code executes, performing calculations, manipulating data, or interacting with the user.

2.3 Data and Methods Working Together

Imagine constructing a roof for your house. Here's how data and methods collaborate:

Data Declaration: We declare variables to store the roof's length (int) and width (int).

Method Creation: We create a method called calculateRoofArea that takes the length and width as parameters.

Method Implementation: Inside the method, we multiply the length and width (data manipulation) and return the calculated area (result).

Method Call: In the main program, we call calculateRoofArea, passing the roof's length and width as arguments.

Data Use: The program uses the returned area (data) to make further decisions or calculations.

This example highlights how data acts as the raw material, and methods process this data to achieve goals.

2.4 Summary

Data and methods are the cornerstones of C programming. Data serves as the information a program stores, while methods provide the instructions to manipulate that data and perform specific tasks. Understanding their interplay paves the way for building complex and efficient C programs.

Practice Exercise:

Write a simple C program that declares variables to store two numbers and defines a method to calculate their sum. Call the method from the main program and print the result.