Сделки се наричат двоични. ако двете операторите, участващи в тях. Изглежда, че всичко е ясно, но тъй като ние сме ангажирани в операцията, два операнда, става интересен проблем:
Възможно ли е да се получи бинарна аритметична операция с различни типове данни? И ако след това какво ще се получи на изхода на операцията?
И така, при извършване на различни операции, свързани двоични данни от същия тип, на изхода ние винаги ще се получи данните от същия тип. Например:
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 противно - първо следва процедурата, и след това се увеличи стойността.
Това завършва урока. Задачата няма, защото след като прочетете този урок на няколко пъти, че трябва да стане ясно.