music

declarations

summary

This subchapter looks at declaring variables.

Professors are invited to give feedback on both the proposed contents and the propsed order of this text book. Send commentary to Milo, PO Box 1361, Tustin, California, 92781, USA.

free computer programming text book project

table of contents
If you like the idea of this project,
then please donate some money.
more information on donating

declarations

This subchapter looks at declaring variables.

variable identifiers

Variables are named with identifiers. In most languages variables may be given any valid identifer name.

C

Variables may have any valid identifier name in C.

Pascal

Variables may have any valid identifier name in Pascal.

PL/I

Variables may have any valid identifier name in PL/I.

explicit and implied declaration

Some languages require that variables be explicitly declared, while other languages allow an implicit declaration.

C

Variables should be explicitly declared by type in C. Variables without a type specification default to extern int.

Pascal

Variables must be explicitly declared in Pascal.

FORTRAN

Undeclared variables that start with the letters I through N, inclusive, (short for INteger) are assumed to be integers, while all other undeclared variables are assumed to be floating point.

PL/I

Undeclared variables that start with the letters I through N, inclusive, (short for INteger) are assumed to be integers, while all other undeclared variables are assumed to be floating point.

declaration location

Some languages require that variables be declared in a specific portion of the program, while others allow variable declarations to be scattered through a program (but usually still must be before first actual use).

C

C variables may appear in any of several recommended locations. Variables declared in unusal locations may exhibit strange or unpredicatable behavior. Recmmended locations include the beginnings of source files or translation units, beginnings of functions, and beginnings of blocks.

Pascal

Pascal variables must be declared in the declaration part, which comes immediately before the statement part.

program SimpleProgram (output);
var Age: Integer;
begin
Age := 21;
write ('Susan is ');
write (Age);
writeln (' years old.')
end.

Note that outputting a variable involves giving the name of the variable without any apostrophes (quotation marks).

The output of this program would be:

Susan is 21 years old.
end.

Ada

“21 The body of a program unit generally contains two parts: a declarative part, which defines the logical entities to be used in the program unit, and a sequence of statements, which defines the execution of the program unit.” —:Ada-Europe’s Ada Reference Manual: Introduction: Language Summary See legal information

“22 The declarative part associates names with declared entities. For example, a name may denote a type, a constant, a variable, or an exception. A declarative part also introduces the names and parameters of other nested subprograms, packages, task units, protected units, and generic units to be used in the program unit.” —:Ada-Europe’s Ada Reference Manual: Introduction: Language Summary See legal information

declaration format

The format for a declaration varies by programming language.

C

In C the order of the parts of a declaration are: a list of storage class specifiers (such as register), type specifiers (such as int), and type qualifiers (such as const), a list of names of variables, an optional equal sign and initialization value, and the semicolon separator.

extern int age = 21;

Pascal

In Pascal the order of the parts of a declaration are: the reserved word var, the name of the variable, a colon character ( : ), the type of the variable, and the semicolon terminator.

var Age: Integer;

JOVIAL

The following material is from the unclassified Computer Programming Manual for the JOVIAL (J73) Language, RADC-TR-81-143, Final Technical Report of June 1981.

1.1.2 Storage

When a JOVIAL program is executed, each value it operates on is
stored as an item. The item has a name, which is declared and
then used in the program when the value of the item is fetched or
modified.

An item is declared by a JOVIAL statement called a declaration
statement. The declaration provides the compiler with the
information it needs to allocate and access the storage for the
item. Here is a statement that declares an integer item:

ITEM COUNT U 10;

This declaration says that the value of COUNT is an integer that
is stored without a sign in ten or more bits. The notation is
compact: "U" means it is an unsigned integer, "10" means it
requires at least 10 bits. We say "at least" then bits because
the JOVIAL compiler may allocate more than ten bits. (That
allocation wastes a little data space, but can result in faster,
more compact code.)

Chapter 1 INTRODUCTION, page 3

JOVIAL does not require that you give the number of bits in the
declaration of an integer item. If you omit it, JOVIAL supplies
a default value that depends on which implementation of JOVIAL
you are using. An example is:

ITEM TIME S;

This statement declares TIME to be the name of an integer
variable item that is signed and has the default number of bits.
On one implementation of JOVIAL, this would be equivalent to the
declaration:

ITEM TIME S 15;

The item TIME occupies 16 bits (including the sign). On another
implementation, it would be equivalent to:

ITEM TIME S 31;

This and other defaults are defined in the user"s manual for the
implementation of JOVIAL you are using.

In this brief introduction, we cannot consider each kind of item
in detail (as we just did for integer items). Instead, a list of
examples follow, one declaration for each kind of value.

ITEM SIGNAL S 2; A signed integer item, which occupies
at least three bits and accomodates
values from -3 to +3.

ITEM SPEED F 30; A floating item, whose value is stored
as a variable coefficient (mantissa)
and variable scale factor (exponent).
The "30" specifies thirty bits for the
mantissa and thus determines the
accuacy of the value. The number of
bits in the exponent is specified by
the implementation, not the program.
It is always sufficient to accommodate
a wide range of numbers.

ITEM ANGLE A 2,13; A fixed item, whose value is stored
with fixed scaling, namely two bits to
the left of the binary point and
thirteen fractional bits. Thus it
accomodate a value in the range -4 <
value < +4 to a precision of
1/(2**14).

Chapter 1 INTRODUCTION, page 4

ITEM CONTROLS B 10; A bit-string item, whose value is a
sequence of ten bits. Thus it can
accommodate, for example, the settings
of ten on/off console switches.

ITEM MESSAGE C 80; A character-string item, whose value
is a sequence of eighty characters.
This it can accommodate, for example,
the message "WARNING: Cooling system
failure" (with plenty of character
positions left over).

ITEM INDICATOR STAUS (V(RED),V(YELLOW),V(GREEN));
A status item, whose value can be
thought of as "V(RED)", "V(YELLOW)",
or "V(GREEN)" but which is, in fact,
compactly stored as an integer. Thus
a programmer culd assign "V(RED)" to a
variable to indicate cooling system
failure instead of using a (presumably
non-mnemonic) integer.

ITEM HEAD P DATA; A pointer item, whose value is the
address of a data object of type DATA.

Items are just the scalar (single-value) data of JOVIAL. JOVIAL
also has tables and blocks, which provide for arrays and other
data structures.


An example of a table declaration is:

TABLE GRID (1:10, 1:10);
BEGIN
ITEM XOORD U;
ITEM YCOORD U;
END

The table GRID has two dimensions. Each dimension contains ten
entries. Each entry consists of two items, XCOORD and YCOORD.


An example of a block declaration is:

BLOCK GROUP;
BEGIN
ITEM FLAG B;
TABLE DATA(100);
ITEM POINT U;
END

The block GROUP contains the item FLAG and the table DATA.

Chapter 1 INTRODUCTION, page 5

Items, tables, and blocks can also be declared using type-names.
A type-name is defined in a type declaration. An example of a
type declaration is:

TYPE COUNTER U 10;

The type-name COUNTER can be used to declare ten-bit integers.
For example:

ITEM CLOCK COUNTER;

Chapter 1 INTRODUCTION, page 6

multiple declarations

In almost all languages each variable may be declared on a separate line.

In many languages it is possible to declare several variables of the same type in a single declaration.

C

In C it is possible to declare multiple variables in the same declaration as long as they all share the exact same specifiers and qualifiers. In this case the variable identifier names will be separated by a comma.

int RunningSubTotal, FinalTotal

Pascal

In Pascal it is possible to declare multiple variables in the same declaration as long as they all share the exact same type. In this case the variable identifier names will be separated by a comma.

var RunningSubTotal, FinalTotal: integer;


free music player coding example

Coding example: I am making heavily documented and explained open source code for a method to play music for free — almost any song, no subscription fees, no download costs, no advertisements, all completely legal. This is done by building a front-end to YouTube (which checks the copyright permissions for you).

View music player in action: www.musicinpublic.com/.

Create your own copy from the original source code/ (presented for learning programming).


return to table of contents
free downloadable college text book

view text book
HTML file

Because I no longer have the computer and software to make PDFs, the book is available as an HTML file, which you can convert into a PDF.

previous page next page
previous page next page
Tweets by @osdata

free computer programming text book project

Building a free downloadable text book on computer programming for university, college, community college, and high school classes in computer programming.

If you like the idea of this project,
then please donate some money.

send donations to:
Milo
PO Box 1361
Tustin, California 92781

Supporting the entire project:

If you have a business or organization that can support the entire cost of this project, please contact Pr Ntr Kmt (my church)

more information on donating

Some or all of the material on this web page appears in the
free downloadable college text book on computer programming.



[画像:Made with Macintosh]

This web site handcrafted on Macintosh computers using Tom Bender’s Tex-Edit Plus and served using FreeBSD .

Viewable With Any Browser


UNIX used as a generic term unless specifically used as a trademark (such as in the phrase “UNIX certified”). UNIX is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company Ltd.

Names and logos of various OSs are trademarks of their respective owners.

Copyright © 2010, 2011, 2012 Milo

Created: November 5, 2010

Last Updated: September 21, 2012


return to table of contents
free downloadable college text book

Quantcast

AltStyle によって変換されたページ (->オリジナル) /