Nedefinovaná proměnná - Undefined variable
An nedefinovaná proměnná v zdrojový kód a počítačový program je proměnná který je přístupný v kódu, ale dosud nebyl deklaroval tímto kódem.[1]
V některých programovací jazyky, implicitní deklarace je poskytována při prvním setkání s takovou proměnnou čas kompilace. V jiných jazycích je takové použití považováno za dostatečně závažné na to, aby byla vydána diagnostika a kompilace selhala.
Některé jazykové definice zpočátku používaly chování implicitní deklarace a jak dospěly, poskytly možnost je deaktivovat (např. Perl „“používejte varování
„nebo Visual Basic „“Možnost Explicit
").
Příklady
Následující text poskytuje některé příklady toho, jak různé implementace programovacího jazyka reagují na nedefinované proměnné. Za každým fragmentem kódu následuje chybová zpráva (pokud existuje).
CLISP
(setf y X)
*** - EVAL: proměnná X nemá žádnou hodnotu
C
int hlavní() { int y = X; vrátit se 0;}
foo.c: Ve funkci `main ': foo.c: 2: error:` x' undeclared (první použití v této funkci) foo.c: 2: error: (Každý nedeklarovaný identifikátor je hlášen pouze jednoufoo.c: 2: error: for each function it appears in.)
JavaScript
y = X
Chyba: x není definován Zdrojový soubor: soubor: /// c: /temp/foo.js
Lua
y = X
(žádná chyba, pokračování)
tisk(y)
nula
ML (Standard ML of New Jersey)
val y = X;
stdIn: 1.9 Chyba: nevázaná proměnná nebo konstruktor: x
PŘÍUŠNICE
Nastavte Y = X
<UNDEF>
OCaml
nechat y = X;;
Nevázaná hodnota x
Perl
můj $ r = ($ x // 0) + 1; # definované nebo operátor
(žádná chyba)
PHP 5
$ r = $ x;
(žádná chyba)
$ r="";$ x="";error_reporting(E_ALL);$ r = $ x;
Upozornění PHP: Nedefinovaná proměnná: x ve foo.php na řádku 3
Krajta 2.4
>>> X = yTraceback (poslední hovor poslední): Soubor „“ , řádek 1, v <module>Chyba názvu: název „y“ není definován
REXX
signálnabez cenyy=X
+++ Chyba 30 v řádku 2: štítek nebyl nalezen
Rubín
irb (hlavní): 001: 0>y = XNameError: nedefinovaná lokální proměnná nebo metoda `x 'pro main: Objectod (irb): 1
Tcl
% soubor y $ xumět'číst "X": žádná taková proměnná
VBScript
Ztlumit yy = X
(žádná chyba)
Volba VýslovnýZtlumit yy = X
(3, 1) Chyba běhového prostředí Microsoft VBScript: Proměnná není definována: 'x'
Reference
- ^ "nedefinovaná proměnná." YourDictionary, n.d. Web. 24. července 2013. <http://computer.yourdictionary.com/undefined-variable >.