ПредишенСледващото

Сделки се наричат ​​двоични. ако двете операторите, участващи в тях. Изглежда, че всичко е ясно, но тъй като ние сме ангажирани в операцията, два операнда, става интересен проблем:

Възможно ли е да се получи бинарна аритметична операция с различни типове данни? И ако след това какво ще се получи на изхода на операцията?

И така, при извършване на различни операции, свързани двоични данни от същия тип, на изхода ние винаги ще се получи данните от същия тип. Например:

Int а = 4, б = 8;
ФОРМАТ (, A + B "."); / * Функция ФОРМАТ ще се счита за по-късно, докато не трябва да се знае, че тя показва стойностите на екрана. В резултат на това, ние получаваме стойност от 12 -ovogo тип Int * /

Сега нека да се справят с бинарните аритметични операции с променливи от различни типове данни. Като за начало ще дам три примера, и след вече обобщи цялата картина:

#include
#include

Int основна (междинно argc, знак * argv [])
Int а = 5; // 2 байта
поплавък б = 3; // 4 байта
двойно с = 2; // 8 байта
овъгляване г = "а"; // 1 байт

ФОРМАТ ( ". \ N", sizeof (А + В)); следователно / * 4 байта тип поплавък * /
ФОРМАТ ( "\ п.", sizeof (б + в)); / * 8 байта, и поради това въведете два пъти * /
ФОРМАТ ( "\ п.", sizeof (а + г)); / * 2 байта, затова тип Int * /

sizeof функция

sizeof връща броя байтове, която заделя памет за променливи. От примерите по-горе става ясно, че чрез добавяне на променливите от различни видове, когато продукцията е променлива от повече видове. Да, за Чар тип: характер, тя притежава, има цяло число код, така че, когато се добавя възникнат никакви проблеми.

И все пак има един странен момент. Сортиране използвани операции на Освен това, умножение, деление и изваждане знаят всичко. И що за чудо - намирането на баланс? Най-добре е да се позова на примера:

Int а = 5, б = 2;
А = А% В; // стойност е равна на 1

Т.е. възниква обикновената разделяне, само резултатът е остатъка от делене. Ето всички трикове на този оператор.

едноместно операция

Увеличаване на броя по един.

Int J = 6;
и ++; // увеличава
I = I + 1; // еквивалентно на увеличаване

Намаляването на броя по един.

Int J = 6;
i--; // намаляване
I = I - 1; //, еквивалентна на декремент

Всеки път, когато има възможност да използва Нарастваща или намаляване, а след това да я използват, тъй като повишава ефективността на вашата програма.

Но все още има един много важен момент. Нараснали и снижаване е префикса и Postfix:

Int а = 5;
ФОРМАТ (++ а "."); // изходи 6
ФОРМАТ (, а ++ "."); // изходи 5

Следователно, префикса образуват първите увеличава, и след това изпълнява следните действия, и Postfix противно - първо следва процедурата, и след това се увеличи стойността.

Това завършва урока. Задачата няма, защото след като прочетете този урок на няколко пъти, че трябва да стане ясно.

Подкрепете проекта - споделете линка, благодаря!