A pointer is essentially the same as a memory address. The main difference between these two concepts is that a memory address is "untyped" (i.e., it can refer to any sort of variable), but a pointer always has an associated data type. For example, char* (pronounced "char star"), means "pointer to a char. To say "a variable points to a memory location" is almost exactly the same as saying "a variable's value is the address of a memory location". In the specific case of a variable of type char*, to say "the char* x points to a C string" is equivalent to saying "x contains the address of the first byte of the C string". Technically, a pointer does have some properties that differ from those of a memory address. However, in our use of pointers, the differences between a pointer and a memory address will never matter. Also see array.

Pop means "remove the top value from a stack".

The keyword private is an access specifier that denies nonmember functions access to member functions and member variables of its class.

A program is a set of instructions specifying the solution to a set of problems, along with the data used by those instructions.

The program counter is a dedicated register that holds the address of the next instruction to be executed. During a function call, a call instruction pushes the contents of the program counter on the stack so that the called function can return to the calling function when it is finished executing.

Programming is the art and science of solving problems by the following procedure:

  1. Find or invent a general solution to a set of problems,
  2. Express this solution as an algorithm or set of algorithms,
  3. Translate the algorithm(s) into terms so simple that a stupid machine like a computer can follow them to calculate the specific answer for any specific problem in the set.
Warning: This definition may be somewhat misleading since it implies that the progression of a program is straightforward and linear, with no revision. This is known as the "waterfall model" of programming, since water going over a waterfall follows a preordained course in one direction. However, real-life programming doesn't usually work this way; rather, most programs are written in an incremental process as assumptions are changed and errors are found and corrected.

The keyword public is an access specifier that allows nonmember functions access to member functions and member variables of its class.

Push means "add another value to a stack".

To return to the main glossary page, click here