Glossary
Algorithms
An algorithm is a step by step process that will generate some result based on a set of provided information
Arguments
The values given to a function in a function call
Boolean Type
A boolean type is a data type where the result is either true or false. C does not have boolean types built into the language. Instead a 0 value is false. Every non-zero value is true
Cohesion
Cohesion refers to the relationship of the code within a function. A highly cohesive function means that all the code are parts of a single task.
Constant
A constant is a named value that cannot be modified once it is initialized. C has two ways to create constants. It can do it through a pre-processor statement or it can be done as a declaration with a const modifier. The const modifier method is a newer construct and not compatible with older compilers
Coupling
Coupling refers to the relationship of code between functions. Loosely coupled functions have very few dependencies on other functions
Falsey
Any zero value is falsey. That is when checked in a condition, anything that evaluates to zero is considered to be false
Flowchart
A pictorial representation of the sequence of steps in our program
Function
A function is a piece of code that does a task and produces a result. Functions are parameterized allowing results to vary based on supplied values
Function Call
A function call takes tells the program to execute the instructions in the function before continuing to the next statement in the program
Function Prototypes
A function prototype is used to declare a function, it consists of a statement describing the return type of the function, the function name and the data types of the arguments
Input
Information provided to a program. The data can be interactively entered or come from some other source such as files or databases
L-value
An L-value refers to something that you can put on the left hand sign of an assignment operation. It is something that is modifiable and not a fixed value.
Library
A collection of modules that provide support of common tasks. For example, ctype is a library that handles character type related operations.
Logical Error
A logical error is an error where the logic of the program is not correct... this could be a miscalculation, a wrong sequencing of statements, a misplaced logical structure and more.
Operands
data that is being used by the operator
Operators
symbols used to indicate the operation to be performed.
Output
Information that is displayed to the user. This can be something shown onto a screen or sent to some other data store such as a file or database
Parameters
The information required by the function. These are declared in the function's prototype. Parameters values are provided to the function during the function call as the function's arguments.
Runtime Stack
The runtime stack is a structure used to organize local variables and function calls
Stack Frame
Each stack frame tracks a single function call. It tracks every the value of every variable and parameter for that particular function call
Syntax
The rules of the programming language that dictate the sequencing of the tokens
Syntax Error
A syntax error is an error that breaks the language rules of your programming language. For example, C requires each statment to be terminated with a semi-colon (;). If you forget to add this, you are breaking the syntax rules and it will result in a syntax error
Truthy
Any non-zero value is truthy. That is when checked in a condition, anything that isn't zero is considered to be true
Unary Operator
An operator that has only one operand. !, ++, & are all examples of unary operators
Undefined
An undefined value is one that does not have some specific intialization. Using an undefined value in a calculation will lead to further errors
Variable
A named area of memory that stores a piece of information