Изрази

Радио: Немања Новаковић


Изрази

• Комбиновањем променљивих, константи и оператора добијемо изразе.
• Сваки израз има свој тип и своју вредност.
• Тип израза зависи од типова подизраза који га чине, као и од оператора којим се ти подизрази
повезују.
• Ако су операнди неодговарајућег типа, тада се имплицитно конвертују у одговарајући тип, ако је то могуће. Која ће се конверзија извршити зависи од оператора.

 Пример конверзије

• Наредба доделе

int i = 5;
float f = 2.3;
f = i; /* f ce imati vrednost 5.0 */

• обрнуто:

int i = 5;
float f = 2.3;
i = f; /* i ce imati vrednost 2 */

Конверзије типова

• Тип израза се може експлицитно променити тзв. cast оператором
(испред израза се у загради наведе име типа у који желимо да
конвертујемо израз).

(tip)<izraz>

float x;
x = 2.3+4.2; /* x ce imati vrednost 6.5 */
x = (int)2.3+(int)4.2; /*x ce imati vrednost 6 */
x = (int)2.3*4.5; /* x ce imati vrednost 9.0 jer zbog prioriteta
operatora konverzije prvo ce biti izvrsena konverzija broja 2.3
u 2 pa tek onda izvrseno mnozenje. */
x = (int)(2.3*4.5); /* x ce imati vrednost 10.0 */

Пример

• Целобројно дељење:

int x = 7, y = 2, z;
double w;
z = x / y; /* z ce imati vrednost 3, jer se vrsi celobrojno
deljenje */
w = x / y; /* w ce imati vrednost 3.0, jer se vrsi
celobrojno deljenje x sa y, pa se ceo broj 3
konvertuje na 3.0 */
w = (1.0*x) / y; /* ovo je nacin da se izbegne celobrojno
deljenje implicitnom konverzijom */
w = (0.0+x) / y; /* i ovo je nacin da se izbegne
celobrojno deljenje implicitnom
konverzijom */
w = (double)x / y; /* ovo je nacin da se izbegne
celobrojno deljenje eksplicitnom
konverzijom */
Advertisements

Оставите одговор

Попуните детаље испод или притисните на иконицу да бисте се пријавили:

WordPress.com лого

Коментаришет користећи свој WordPress.com налог. Одјавите се / Промени )

Слика на Твитеру

Коментаришет користећи свој Twitter налог. Одјавите се / Промени )

Фејсбукова фотографија

Коментаришет користећи свој Facebook налог. Одјавите се / Промени )

Google+ photo

Коментаришет користећи свој Google+ налог. Одјавите се / Промени )

Повезивање са %s