For faster navigation, this Iframe is preloading the Wikiwand page for Wyrażenie stałe.

Wyrażenie stałe

Wyrażenie stałe jest to wyrażenie zapisane w kodzie źródłowym programu, którego wartość może zostać wyznaczona przez translator już na etapie kompilacji.

W kodzie źródłowym często umieszczane są konkretne wartości, znane na etapie kodowania. Wartości te mogą zostać zapisane za pomocą literałów reprezentujących w danym typie konkretną wartość. W większości implementacji możliwe jest również zapisanie takich wartości w postaci wyrażeń stałych.

Wyrażenia stałe w odróżnieniu od literałów nie stanowią zapisu wprost wartości, lecz jest to zapis wartości za pomocą literałów, w tym zdefiniowanych wcześniej stałych, symboli i makr preprocesora, operatorów oraz wybranych funkcji standardowych. Określona wartość, która ma zostać wpisana do kodu źródłowego, wymaga w tym przypadku wykonania obliczeń. W większości systemów programowania wyrażania takie są obliczane w trakcie przetwarzania kodu źródłowego przez translator, do kodu wynikowego wstawiana jest wyznaczona wartość wyrażenia stałego (a nie kod obliczeniowy zawarty w wyrażeniu).

Stosowanie wyrażeń stałych:

  • uwalnia programistę od pewnych obliczeń przy kodowaniu,
  • stanowi samodokumentowanie się kodu źródłowego, ułatwiające jego późniejsze zrozumienie,
  • ułatwia pisanie złożonych projektów przez grupy programistów (np. poprzez stosowanie wcześniej definiowanych przez innych programistów stałych lub symboli preprocesora bez konieczności znajomości ich wartości, a więc pewne parametryzowanie kompilacji).

Typ wartości wyrażenia stałego wynika najczęściej z kontekstu lub zastosowanych literałów i operatorów. Gdy język dopuszcza takie wyrażenia, to mogą występować wszędzie tam, gdzie można stosować literały reprezentujące konkretne wartości.

Wyrażenia stałe często stosowane są przy deklarowaniu stałych i inicjalizacji zmiennych (zwane także wyrażeniami inicjującymi).

język programowania możliwość stosowania przykłady
Turbo Pascal[1]
  • literały
  • operatory
  • zadeklarowane wcześniej stałe
  • wybrane funkcje standardowe modułu System
  • const A=15+Ord('A');
  • const S='A'+'B'+Chr(10)+#$D;
  • const Z=['0'..'9']+['A'..'Z'];
Turbo C[2]
  • literały
  • operatory
  • stałe preprocesora
  • zmienne zainicjowane
  • funkcje
  • int v=5+STALA_PREPR;
  • double x=3-sin(0.2);
Clipper 5.0[3]
  • literały
  • operatory
  • zadeklarowane wcześniej stałe
  • stałe preprocesora
LOCAL x:=12+15/STALA_PREPR
PL/I[4]
  • literały
  • operatory
  • stałe preprocesora
  • zmienne zainicjowane
  • procedury
  • DCL N INITAL(CALL IN(2));
  • DCL (X DEC, Y BIN) INITIAL(5+6-N);
Modula-2[5]
  • literały
  • operatory
  • zadeklarowane wcześniej stałe
  • CONST N=16-1;
  • CONST M=N*N-1;

Zobacz też

[edytuj | edytuj kod]

Przypisy

[edytuj | edytuj kod]
  1. Andrzej Marciniak, Borland Pascal 7.0, Wyd. Nakom, Poznań 1994 r., seria: Biblioteka Użytkownika Mikrokomputerów, ISBN 83-85060-53-7, ISSN 0867-6011
  2. Jan Bielecki, Turbo C z grafiką na IBM PC, Wydawnictwa Naukowo-Techniczne, Warszawa 1990, Seria: Mikrokomputery, ISBN 83-204-1101-7
  3. Wojciech Rogowski, Arkadiusz Serodziński, Clipper 5.0, Warszawa: Wydawnictwo PLJ, 1991, ISBN 83-85190-20-1, OCLC 749775734.
  4. Jan Bielecki, Rozszerzony PL/I i JCL w systemie OS/RIAD, Państwowe Wydawnictwo Naukowe, Warszawa 1986, Seria: Biblioteka Informatyki, ISBN 83-01-06146-4
  5. Niklaus Wirth, Modula-2, Wydawnictwa Naukowo-Techniczne, Warszawa 1987, Seria: Biblioteka Inżynierii Oprogramowania, ISBN 83-204-0828-8
{{bottomLinkPreText}} {{bottomLinkText}}
Wyrażenie stałe
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?