Vrste podatkov v računalništvu so številne. Razdeljeni so na referenčne vrste in vrste vrednot. Vrste vrednosti običajno delujejo hitreje, ker so shranjene v skladu in se neposredno upravljajo. To so numerične spremenljivke in logične vrste podatkov. Referenca v skladu vsebuje povezavo do kupa, v kupu pa je že izvedba tipa. Referenčni podatkovni tipi so nizske spremenljivke, dinamične ali globalne spremenljivke, vdelani ali prilagojeni razredi.
Tip podatkov nizke ravni
Logični tip podatkov. Logične operacije
z uporabo sistema;
imenski prostor Boolean
{
razred MainClass
{
javni statični void Glavni (string [] args)
{
Console.WriteLine (true & amp; );
Console.ReadLine ();
}
}
}
V tem primeru je drugi pogoj BLOCK, kar pomeni, da je ukazna miza prikazala false.
Logični OR
Operator || vrne resnico, če je vsaj eden od argumentov resničen.
z uporabo sistema;
imenski prostor Boolean
{
razred MainClass
{
javni statični void Glavni (string [] args
{
Console.WriteLine (true || false) ;
Console.ReadLine ();
}
}
}
V tem primeru je eden od pogojev TRUE, zato je prikazana prava konzola.
Exclusive OR
Operator ^ (ne sme se zamenjati z erekcijo v določeni meri) vrne resnico, če je resničen le en argument.
z uporabo sistema;
imenski prostor Boolean
{
razred Glavni razred
{
javni statični void Glavni (niz [] args)
{
Console.WriteLine (res ^ res);
Console.ReadLine ();
}
}
}
V tem primeru sta oba argumenta resnična, tako da je v ukazni mizi prikazana false.
& lt; script type = "text /javascript" & gt;
lahko blockSettings2 = {blockId: "R-A-271049-5", renderTo: "yandex_rtb_R-A-70350-39", async:! 0};
if (document.cookie.indexOf ("abmatch =") & gt; = 0) blockSettings2.statId = 70350;
Funkcija (a, b, c, d, e) {a [c] = a [c] || [], a [c] .push (funkcija () {Ya.Context.AdvManager.render (blockSettings2)}), e = b.getElementsByTagName ("script") , d = b.createElement ("script"), d.type = "text /javascript", d.src = "//an.yandex .ru /system /context.js ", d.async =! 0e.parentNode.insertBefore (d, e)} (ta, ta.dokument," yandexContextAsyncCallbacks ");
Enakost in neenakost
Operator == vrne resnico, če sta oba pogoja enaka. Operator! = Vrne resnico, če oba pogoja nista enaka.
z uporabo sistema;
imenski prostor Boolean
{
class MainClass
{
public static void Glavni (string [] args)
{
Console.WriteLine (true! = False) ;
Console.ReadLine ();
}
}
}
Konzola bo resnična, ker je pogoj izpolnjen.
Primeri v C # so bili obravnavani zgoraj. V tem jeziku za operacije logičnega tipa sta definirani dve vrednosti - true in false. In tukaj je prepovedano pretvoriti Boolean vrednosti v cela števila, prevajalnik bo dal napako. Kot je enostavno opaziti, se pri pošiljanju metode WriteLine razred Console boolean spremenljivki na konzoli prikaže njena vrednost.
Prav tako se boolean spremenljivka lahko nadzoruje s stavkom if. Če je pogoj za izvršitev izraza z if glagol spremenljivke, se izraz lahko zmanjša na:
če (x) {/* do smth * /}
Primerjalne operacije
Operaterji & gt; =
V C, če spremenljivka vsebuje 0, je njena logična vrednost enakovredna KRVI in obratno, katera koli številka se obravnava kot TRUE. Za boljše razumevanje glejte spodajodrezek kode:
če (bool_variable) printf ("True! n"); else printf ("False! n")
V C ni pojma logičnega tipa podatkov, ampak se uporabljajo številčni tipi, večinoma celo število. Zato v logičnih operacijah vsak operand številčne vrste, ki ni pomemben, ni enak nič, je interpretiran kot TRUE, rezultat logičnih operacij pa je celo število, eno in nič. V C ++ je bila uvedena logična vrsta podatkov, ampak za udobje delovanja. To ne vpliva na uporabo drugih vrst logičnih izrazov kot v C.
& lt; script type = "text /javascript" & gt;
lahko blockSettings3 = {blockId: "R-A-271049-6", renderTo: "yandex_rtb_R-A-70350-44", async:! 0};
če (document.cookie.indexOf ("abmatch ="))> 0) blockSettings3.statId = 70350;
Funkcija (a, b, c, d, e) {a [c] = a [c] || [], a [c] .push (funkcija () {Ya.Context.AdvManager.render (blockSettings3)}), e = b.getElementsByTagName ("script") , d = b.createElement ("script"), d.type = "text /javascript", d.src = "//an.yandex .ru /system /context.js ", d.async =! 0e.parentNode.insertBefore (d, e)} (ta, ta.dokument," yandexContextAsyncCallbacks ");
Vrstni red izvajanja operaterjev logičnih vrst podatkov se pojavi od leve proti desni. Na primer, izračun izraza
var x & amp; lahko y & amp; & amp; var z
se ustavi takoj, ko se v vrednosti DEFINICIJE prikaže prvi operand, in račun
var x || lahko y || var z
se izvede, dokler prevajalnik ne doseže prve prave vrednosti.