Co tyto ({} []) symboly znamenají z hlediska programování v počítači a jinak?


Nejlepší odpověď

Počítače nic neví. Řeknou jim význam něčeho.

Mohly by být zakódovány v jakémkoli schématu a dekódováno ve stejném schématu, aby bylo možné udělat něco smysluplného. Nejoblíbenější schémata kódování jsou rozšířené ASCII a UNICODE (například UTF-8, UTF- 16 atd.), Ale můžete si také navrhnout vlastní. Jediným problémem bude přenositelnost dat. Jakákoli data zakódovaná ve vašem schématu mohou vypadat jako odpadky na stroji, který nepoužívá vaše kódovací schéma.

Když navrhujeme software pro počítač, my programátoři rozhodnou, co by v našem softwaru mělo znamenat {} a [] . Významy {} a [] tedy závisí na kontextu softwaru.

C11 , aktuální standard pro programovací jazyk C, v kódovaném Unicode (pravděpodobně UTF-8), avšak {and} jsou dále kódovány v jazyce C reprezentovat blok kódu jako v příkladu níže:

#include

int main()

{

// printf() displays the string inside quotation

printf("Hello, World!");

return 0;

}

V kaskádových stylech (CSS) jsou {a} dále kódovány tak, aby představovaly deklarační blok jako v příkladu níže:

p {

color: red;

text-align: center;

}

Stručně řečeno, v počítači, {} a [] může znamenat cokoli a jak je definováno programátorem v jeho softwaru. V matematice mají následující význam Bracket (mathematics) – Wikipedia

Odpověď

V moderních programovacích jazycích místo toho vyžadování více instrukcí pro zvýšení, snížení, násobení, dělení nebo modulování hodnoty a uložení do proměnné, můžete to udělat v jedné instrukci. Zatímco některé jazyky poskytují způsob, jak již něco z toho udělat (což ukážu také v mém příkladu), některé jazyky nikoli.

Jak byste toho museli dosáhnout v jiných jazycích:

x = x + 1; //also x++; or ++x;

x = x - 1; //also x--; or --x;

x = x * 2;

x = x / 2;

x = x \% 3;

„Zkratka“:

x += 1;

x -= 1;

x *= 2;

x /= 2;

x \%= 3;

Ve většině jazyků, které tuto funkci podporují, fungují úplně stejně jako můj první blok kódu, ale zabírají méně místa. Skutečné použití pro sčítání a odčítání spočívá v tom, že můžete nahradit proměnnou nebo jinou částku a přidat / odečíst, což u unárních ++ a – – operátorů nedokážete. Řekněme, že pracujete na docela velké hře a pracujete na ní sami. Chcete-li ušetřit čas, chcete použít co nejkratší dobu psaní, abyste dosáhli stejných věcí. To je místo, kde se tyto hry hrají, protože mají přesně stejnou rychlost operace jako vypisování všeho a fungují přesně stejnými způsoby (kromě ++x a --x , které vracejí svoji hodnotu PO operaci, na rozdíl od před ní ve srovnání s x++ a x--) .

Zvažte tedy následující příklad z reálného světa (ačkoli některé věci zjevně chybí, například kontrola limitů a kolizí):

if(Keyboard.getKeyPressed(Key\_W) && !Keyboard.getKeyPressed(Key\_D))

{

acceleration -= 0.128f; //we"re subtracting here to change the direction to left

x += deltaTime * acceleration;

}

else if (Keyboard.getKeyPressed(Key\_D) && !Keyboard.getKeyPressed(Key\_W))

{

acceleration += 0.128f;

x += deltaTime * acceleration;

}

Ačkoli to šetří jen trochu psaní, tato část se sčítá, když máte tisíce řádky kódu. Vypadá to také hezčí než mít proměnnou nastavenou na hodnotu + / – / * / atd. A pro některé lidi může být snazší číst. Když programuji v jazyce, který tuto funkci podporuje, používám pouze tento způsob.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *