Zmienna wbudowana (predefiniowana) – zmienna dostępna w określonym języku programowania, jego implementacji, lub systemie komputerowym, która może zostać użyta w kodzie źródłowym, bez jej jawnej deklaracji, z uwzględnieniem zdefiniowanych zasad jej użycia i przeznaczeniu.
Zmienne tego rodzaju są udostępniane w różnych klasach aplikacji komputerowych i nie muszą być związane z określonym językiem programowania. Predefiniowane zmienne udostępniane są w:
Udostępnianie takich zmiennych ma najczęściej na celu udostępnienia programiście dostępu do określonych zasobów systemu komputerowego, definiowania określonych ustawień systemu lub aplikacji, a także wymiany informacji pomiędzy aplikacjami oraz pomiędzy aplikacjami a systemem.
Przykładowe zmienne predefiniowane
| język/system | zmienne predefiniowane | typ | opis |
|---|---|---|---|
| AWK[1] | ARGC, ARGV, ARGIND, ENVIRON ... itd. | zmienne środowiskowe i inne | |
| PL/M | OUTPUT | (256) BYTE | dostęp do portów wyjścia proc. 8080 |
| MEMORY | () BYTE | dostęp do pamięci jako tablicy bajtów | |
| STACKPTR | ADDRESS | wskaźnik stosu | |
| Turbo Pascal | Mem, (MemW, MemL) | array of Byte (Word, LongInt) | dostęp do pamięci operacyjnej |
| Port (PortW) | array of Byte (Word) | dostęp do portów | |
| Pascal | input, output | file | we-wy tekstowe |
| Snobol4 | INPUT, OUTPUT, PUNCH, TERMINAL | we-wy | |
| END, FRETURN, NRETURN, RETURN, CONTINUE, BREAK | etykiety systemowe | ||
| &ANCHOR, &ERRTEXT, &ERRTYPE, &FTRACE, &FULLSCAN itd. | zmienne systemowe, ustawień i obsługi błędów | ||
| DOS | ERRORLEVEL | kod zakończenia programu lub polecenia | |
| Wiki[2] | {{CURRENTDAY}} i inne | czas | |
| {{LOCALDAY}} i inne | czas lokalny | ||
| {{CURRENTVERSION}} i inne | statystyki | ||
| {{PAGENAME}} i inne | nazwy stron i informacje |