Undefined variable

Uses your system voice; voice and rate in settings.

Snapshot

≈ 3 min read

Names in other languages

No names in other languages are held for this entry yet.

Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.

An undefined variable in the source code of a computer program is a variable that is accessed in the code but has not been declared by that code. In some programming languages, an implicit declaration is provided the first time such a variable is encountered at compile time. In other languages such a usage is considered to be sufficiently serious that a diagnostic being issued and the compilation fails. Some language definitions initially used the implicit declaration behavior and as they matured provided an option to disable it (e.g. Perl's " use warnings " or Visual Basic's " Option Explicit ").

An undefined variable in the source code of a computer program is a variable that is accessed in the code but has not been declared by that code. In some programming languages, an implicit declaration is provided the first time such a variable is encountered at compile time. In other languages such a usage is considered to be sufficiently serious that a diagnostic being issued and the compilation fails. Some language definitions initially used the implicit declaration behavior and as they matured provided an option to disable it (e.g. Perl's " use warnings " or Visual Basic's " Option Explicit "). ==Examples== The following provides some examples of how various programming language implementations respond to undefined variables. Each code snippet is followed by an error message (if any). (setf y x) *** - EVAL: variable X has no value ===C=== int main() { int y = x; return 0; } foo.c: In function `main': foo.c:2: error: `x' undeclared (first use in this function) foo.c:2: error: (Each undeclared identifier is reported only once foo.c:2: error: for each function it appears in.) "use strict"; let y = x; let y = x; let x; // causes error on line 1 ReferenceError: x is not defined Source File: file:///c:/temp/foo.js ===Lua=== y = x (no error, continuing) print(y) nil val y = x; stdIn:1.9 Error: unbound variable or constructor: x ===MUMPS=== Set Y=X let y = x;; Unbound value x ===Perl=== my $y = ($x // 0) + 1; # defined-or operator (no error) ===PHP 5=== $y = $x; (no error) $y=""; $x=""; error_reporting(E_ALL); $y = $x; PHP Notice: Undefined variable: x in foo.php on line 3 ===Python=== x = y Traceback (most recent call last): File " ", line 1, in x = y NameError: name 'y' is not defined >>> x = y Traceback (most recent call last): File " ", line 1, in NameError: name 'y' is not defined ===REXX=== signal on novalue y = x +++ Error 30 in line 2: Label not found irb(main):001:0> y = x NameError: undefined local variable or method `x' for main:Object from (irb):1 % set y $x can't read "x": no such variable Dim y y = x (no error) Option Explicit Dim y y = x (3, 1) Microsoft VBScript runtime error: Variable is undefined: 'x' ==References==

Text derived from https://en.wikipedia.org/w/index.php?oldid=1333190874 under CC BY-SA 4.0; modifications have been made.

Provenance

snapshot enwiki-001333190874 · captured 1768543200.0 · version history

Cite this page as: encyclopegia.org, “Undefined variable”, snapshot enwiki-001333190874. https://encyclopegia.org/a/undefined-variable