Видовете данни в компютърните науки са многобройни. Те са разделени на референтни типове и типове ценности. Видовете стойности обикновено работят по-бързо, защото се съхраняват в стека и се управляват директно. Това са числени променливи и логически типове данни. Справочникът съхранява в стека връзка към купчината, а в купчината вече има тип изпълнение. Референтните типове данни са низови променливи, динамични или глобални променливи, вградени или потребителски класове.
Типът данни на ниско ниво
Логически тип данни. Логически операции
използвайки System;
пространство на имената Булева
{
клас MainClass
{
публична статична невалидна Main (string [] args)
{
Console.WriteLine (true & amp; )
Console.ReadLine ();
}
}
}
В този пример второто условие е BLOCK, което означава, че конзолата показва false.
Логическо ИЛИ
Оператор || връща истината, ако поне един от аргументите е вярно.
използване на система;
пространство на имената Булева
{
класа MainClass
{
public static void Главна (string [] args
{
Console.WriteLine (true || false) ;
Console.ReadLine ();
}
}
}
В този пример едно от условията е TRUE, следователно се показва истинската конзола.
Exclusive OR
Операторът ^ (да не се бърка с ерекцията в определена степен) връща истината, ако само един от аргументите е вярно.
използване на система;
пространство на имената Булево
{
клас Главен
{
публичен статичен невалиден Главен (string [] args)
{
Console.WriteLine (вярно ^ вярно);
Console.ReadLine ();
}
}
}
В този пример и двата аргумента са верни, така че в конзолата се показва false.
& lt; script type = "text /javascript" & gt;
може да blockSettings2 = {blockId: "R-A-271049-5", renderTo: "yandex_rtb_R-A-70350-39", async: 0};
if (document.cookie.indexOf ("abmatch =")> = 0) blockSettings2.statId = 70350;
Функция (a, b, c, d, e) {a [c] = a [c] || [], a [c] .push (функция () {Ya.Context.AdvManager.render (blockSettings2)}), e = b.getElementsByTagName ("скрипт") , d = b.createElement ("скрипт"), d.type = "text /javascript", d.src = "//an.yandex .ru /system /context.js ", d.async =! 0e.parentNode.insertBefore (d, e)} (това, този.документ," yandexContextAsyncCallbacks ");
Равенство и неравенство
Операторът == връща истината, ако и двете условия са еднакви. Оператор! = Връща истината, ако и двете условия не са равни.
използвайки System;
пространство на имената Булева
{
клас MainClass
{
public static void Main (string [] args)
{
Console.WriteLine (true! = False) ;
Console.ReadLine ();
}
}
}
Конзолата ще бъде вярна, защото условието е изпълнено.
Примери в C # са разгледани по-горе. В този език за операции от логически тип се дефинират две стойности - true и false. И тук е забранено да се конвертират булеви стойности в цели числа, компилаторът ще даде грешка. Както е лесно да се забележи, когато изпращате на метода WriteLine клас конзола булева променлива на конзолата, нейната стойност се показва.
Също така, булевата променлива може да се контролира от оператора if. Ако условието за изпълнение на израза с if е глаголът на променливата, тогава изразът може да бъде намален до:
if (x) {/* do smth * /}
Сравнителни операции
Оператори & gt; =
В C, ако променливата съдържа 0, нейната логическа стойност е еквивалентна на BLOOD, и обратно, всеки номер се третира като TRUE. За по-добро разбиране вижте по-долукодов фрагмент:
ако (bool_variable) printf ("True! n"); else printf ("False! n")
В C няма представа за логически тип данни, вместо това се използват числени типове, най-вече цяло число. Следователно, при логически операции всеки операнд от числов тип, който няма значение, не е равен на нула, се интерпретира като TRUE, а резултатът от логическите операции са цели числа, едно и нула, съответно. В C ++ е въведен логическият тип данни, а по-скоро за удобство при работа. Това не засяга използването на други типове логически изрази, както в C.
& lt; script type = "text /javascript" & gt;
може да blockSettings3 = {blockId: "R-A-271049-6", renderTo: "yandex_rtb_R-A-70350-44", async:! 0};
if (document.cookie.indexOf ("abmatch =")> = 0) blockSettings3.statId = 70350;
Функция (a, b, c, d, e) {a [c] = a [c] || [], a [c] .push (функция () {Ya.Context.AdvManager.render (blockSettings3)}), e = b.getElementsByTagName ("скрипт") , d = b.createElement ("скрипт"), d.type = "text /javascript", d.src = "//an.yandex .ru /system /context.js ", d.async =! 0e.parentNode.insertBefore (d, e)} (това, този.документ," yandexContextAsyncCallbacks ");
Редът на изпълнение на операторите на логически типове данни възниква отляво надясно. Например, изчислението на израза
var x & amp; може да & amp; & amp; var z
ще спре веднага след появата на първия операнд в стойността на ОПРЕДЕЛЕНИЕ, а смятането
var x || може y || var z
ще се изпълни, докато компилаторът изпълни първата истинска стойност.