Legjobb válasz
A számítógépek nem tudnak semmit. Megmondják valaminek a jelentését.
Bármelyik séma szerint kódolhatók , és dekódolt ugyanabban a rendszerben, hogy valami értelmes dolgot tegyen. A legnépszerűbb kódolási sémák a ASCII kiterjesztett és a UNICODE (például UTF-8, UTF- 16 stb.), De megtervezheti sajátját is. Az egyetlen probléma az adatok hordozhatósága lesz. A sémája alatt kódolt adatok szemétnek tűnhetnek egy olyan gépen, amely nem használja a kódolási sémát.
Amikor egy szoftvert tervezünk számítógépre, a programozók úgy döntenünk, hogy mit kell {} és [] jelenteni a szoftverünkben . Tehát a {} és [] jelentése a szoftver kontextusától függ.
C11 , a C programozási nyelv jelenlegi szabványa, Unicode-ban (valószínűleg UTF-8) kódolva, azonban {és} tovább kódolva vannak C nyelven a kódblokk ábrázolásához, az alábbi példához hasonlóan:
#include
int main()
{
// printf() displays the string inside quotation
printf("Hello, World!");
return 0;
}
A lépcsőzetes stíluslapokban (CSS) a {és} kódolásra kerül, hogy a deklarációs blokkot , mint az alábbi példában:
p {
color: red;
text-align: center;
}
Röviden, számítógépen, {} és [] bármit jelenthet és ahogy egy programozó a szoftverében meghatározta. A matematikában a következő jelentése van: Zárójel (matematika) – Wikipédia
Válasz
A modern programozási nyelvekben ehelyett Ha több utasításra van szükség egy érték növeléséhez, csökkentéséhez, szorzásához, osztásához vagy modulálásához és egy változóba való tároláshoz, ezeket egy utasításban teheti meg. Míg egyes nyelvek már biztosítják ezt a módszert (ezt a példámban is bemutatom), egyes nyelvek nem.
Hogyan kell ezt más nyelveken megvalósítani:
x = x + 1; //also x++; or ++x;
x = x - 1; //also x--; or --x;
x = x * 2;
x = x / 2;
x = x \% 3;
A „parancsikon” módja:
x += 1;
x -= 1;
x *= 2;
x /= 2;
x \%= 3;
A legtöbb nyelven, amely támogatja ezt a funkciót, ezek pontosan ugyanazt csinálják, mint az első kódblokkom, de rövidebb helyet foglalnak el. Az összeadás és kivonás valódi haszna az, hogy változót vagy más összeget helyettesíthet az összeadáshoz / kivonáshoz, amelyet nem tehet meg az unáris ++ és – – operátorokkal. Tegyük fel, hogy elég nagy játékon dolgozik, és egyedül dolgozik rajta. Időmegtakarítás érdekében a lehető legrövidebb gépelést szeretné használni ugyanazok eléréséhez. Itt jönnek be ezek a játékok, mivel pontosan ugyanolyan működési sebességgel rendelkeznek, mint mindent kiírva, és pontosan ugyanúgy teljesítenek (kivéve a ++x
és a --x
, amelyek a művelet UTÁN adják vissza az értéküket, szemben az előtte, összehasonlítva a x++
és x--
) .
Tekintsük tehát a következő valós világ példáját (bár bizonyos dolgok nyilván hiányoznak, például a korlátok és ütközések ellenőrzése):
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;
}
Noha ez csak egy kis gépelési lehetőséget takarít meg, ez a kicsit összeadódik, ha több ezer kódsorok. Szebben néz ki, mint ha egy változó önmagában van beállítva + / – / * / etc érték, és néhány ember számára könnyebben olvasható. Ha olyan nyelven programozom, amely támogatja ezt a funkciót, akkor kizárólag ezt a módot használom.