Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Control flow
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Primitives == === Labels === {{main article|Label (computer science)}} A [[Label (programming language)|label]] is an explicit name or number assigned to a fixed position within the [[source code]], and which may be referenced by control flow statements appearing elsewhere in the source code. A label marks a position within source code and has no other effect. [[Line number]]s are an alternative to a named label used in some languages (such as [[BASIC]]). They are [[Natural number|whole numbers]] placed at the start of each line of text in the source code. Languages which use these often impose the constraint that the line numbers must increase in value in each following line, but may not require that they be consecutive. For example, in BASIC: <syntaxhighlight lang="qbasic"> 10 LET X = 3 20 PRINT X </syntaxhighlight> In other languages such as [[C (programming language)|C]] and [[Ada (programming language)|Ada]], a label is an [[identifier]], usually appearing at the start of a line and immediately followed by a colon. For example, in C: <syntaxhighlight lang="c"> Success: printf("The operation was successful.\n"); </syntaxhighlight> The language [[ALGOL 60]] allowed both whole numbers and identifiers as labels (both linked by colons to the following statement), but few if any other [[ALGOL]] variants allowed whole numbers. Early [[Fortran]] compilers only allowed whole numbers as labels. Beginning with Fortran-90, alphanumeric labels have also been allowed. === Goto === {{main article|GOTO}} The ''goto'' statement (a combination of the English words ''[[wiktionary:go|go]]'' and ''[[wiktionary:to|to]]'', and pronounced accordingly) is the most basic form of unconditional transfer of control. Although the [[Keyword (computing)|keyword]] may either be in upper or lower case depending on the language, it is usually written as: '''goto''' ''label'' The effect of a goto statement is to cause the next statement to be executed to be the statement appearing at (or immediately after) the indicated label. Goto statements have been [[considered harmful]] by many computer scientists, notably [[Edsger W. Dijkstra|Dijkstra]]. === Subroutines === {{main article|Subroutine}} The terminology for [[subroutine]]s varies; they may alternatively be known as routines, procedures, functions (especially if they return results) or methods (especially if they belong to [[Class (programming)|classes]] or [[type class]]es). In the 1950s, computer memories were very small by current standards so subroutines were used mainly to reduce program size. A piece of code was written once and then used many times from various other places in a program. Today, subroutines are more often used to help make a program more structured, e.g., by isolating some algorithm or hiding some data access method. If many programmers are working on one program, subroutines are one kind of [[Modularity (programming)|modularity]] that can help divide the work. === Sequence === {{main article|Structured programming}} In structured programming, the ordered sequencing of successive commands is considered one of the basic control structures, which is used as a building block for programs alongside iteration, recursion and choice.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)