Poznawaniu zasad programowania I struktury języka C++, towarzyszyć będzie w niniejszej książce narzędzie programistyczne w postaci aplikacji firmy Microsoft – Visual C++ V



Pobieranie 91,03 Kb.
Strona1/3
Data12.01.2018
Rozmiar91,03 Kb.
  1   2   3




    1. Instrukcje i wyrażenia.

Ciąg znaków właściwie interpretowany przez kompilator języka C++ i wywołujący w odpowiednią reakcję programu nazywamy instrukcją.

Instrukcje w języku C++ są zakończone średnikiem. Spacje, tabulacje i znaki końca linii są tzw. białymi znakami niewidocznymi dla kompilatora.

Instrukcje dzielimy na proste i złożone. Instrukcją prostą jest instrukcja zakończona znakiem średnika. Instrukcja złożona rozpoczyna się znakiem { i kończy się znakiem }.



{
instrukcje proste
}
Na przykład operacja zamiany wartości dwóch zmiennych a i b przy pomocy zmiennej pomocniczej temp, może być zapisana przy pomocy instrukcji złożonej następującej postaci :
{

temp=a;

a=b;

b=temp;



}

Każdy zapis wyrażony w programie języka C++ zwracający wartość jest wyrażeniem. Wyrażenia są instrukcjami języka. Może nim być stała (2.3, 5, PI), zmienna (liczba), zmienne połączone operatorem dodawania + (a + b) lub innym operatorem arytmetycznym.


Operatory to symbole wywołujące odpowiednią akcję. Wraz ze stałymi i zmiennymi tworzą one wyrażenia.
Podstawowym operatorem wykorzystywanym w dotychczasowych przykładach jest dwuargumentowy operator przypisania. Symbolem tego operatora jest znak = .
operand_lewostronny = operand_prawostronny;
Powoduje on iż wartość operandu prawostronnego zostaje przypisana do operandu lewostronnego.

y = a + b;

liczba = 12;

Operatory matematyczne




Kolejność wykonywania działań w wyrażeniach utworzonych przez stałe, zmienne i operatory matematyczne jest zgodna z zasadami matematyki w pierwszej kolejności, a przy identycznym priorytecie od strony lewej do prawej. Zmianę kolejności wykonywanych działań osiągamy stosując nawiasy.


Dwuargumentowy operator przypisania i operatory arytmetyczne wykorzystywane są łącznie tworząc odpowiednio dwuargumentowe operatory :
- += operator dodawania z przypisaniem

- -= operator odejmowania z przypisaniem

- *= operator mnożenia z przypisaniem

- /= operator dzielenia z przypisaniem

- %= operator dzielenia modulo z przypisaniem
Operator działania matematycznego z przypisaniem zdefiniowany jest w następujący sposób :
Jeżeli operand lewostronny X operacji przypisania występuje również po prawej stronie operatora przypisania jako jeden z argumentów operatora działania arytmetycznego tj :
X = X (operator matematyczny) wyrażenie;
to operacje podstawienia można zapisać jako :
X (operator matematyczny) = wyrażenie;
np. liczba = liczba +1;

liczba +=1;


liczba = liczba / (a+3.2);

liczba /= (a+3.2)


Warto zwrócić uwagę iż ze względu na kolejność wykonywanych operacji nie są równoważne
w = w * x + y ; w *= x + y;
zaś równoważne są :
w = z * (x + y ); w *= x + y;


Operatory inkrementacji i dekrementacji

Wykonanie operacji zwiększenia lub zmniejszenia wartości zmiennej typu integer o wartość jednostkową jest podstawą działania wielu instrukcji sterujących w programie. Operacja zwiększenia zmiennej o wartość 1, nazywana jest inkrementacją i polega ona na wykonaniu następującej instrukcji podstawienia :


dla zmiennej całkowitej o identyfikatorze i i = i + 1;

lub i += 1;


Wykonać ją można również wykorzystując operator inkrementacji ++ .
Analogicznie operacje zmniejszenia wartości zmiennej o 1 nazywamy dekrementacją i zamiast wykonywać ją poprzez operacje podstawienia stosujemy do tego celu operator - - .
Operatory inkrementacji ( ++ ) i dekrementacji ( - - ) mogą występować w formie przedrostkowej lub przyrostkowej.

Forma przedrostkowa wymaga umieszczenia operatora przed identyfikatorem zmiennej


+ + i lub - - i ,
zaś przyrostkowa za identyfikatorem zmiennej
i + + lub i - - .
Forma przedrostkowa oznacza, iż w po dokonaniu operacji (inkrementacji lub dekrementacji) wartość zmiennej zostaje wykorzystana do innych celów w programie, zaś przyrostkowa powoduje wykonanie operacji po uprzednim wykorzystaniu wartości zmiennej.
np.

int x=1,y;

y=++x;  y jest równe 2

int x=1,y;

y=x++;  y jest równe 1

W wielu sytuacjach umieszczenie operatora przed i za identyfikatorem zmiennej przynosi identyczny skutek, jednak występują przypadki pokazujące (obraz 1.18.), iż zastosowanie operatora może wywołać w obu przypadkach różny skutek.


Obraz 1.18. Zastosowanie operatorów inkrementacji i dekrementacji przedrostkowej i przyrostkowej.


Powyższy przykład potwierdza odmienne działanie operatorów przed- i przyrostkowego.

W przypadku umieszczenie operatora przed zmienną w pierwszej kolejności wykonywana jest inkrementacja (dekrementacja), a dopiero potem wyprowadzenie wartości zmiennej do strumienia wyjściowego. Gdy zaś operator umieści za zmienną w pierwszej kolejności wykonywana jest operacja wyprowadzenia wartości zmiennej, a dopiero potem operacja zwiększania (zmniejszania).



  1   2   3


©operacji.org 2017
wyślij wiadomość

    Strona główna