C# int tipusú változó bekérése?
Az lenne, a kérdésem, hogy ezt hogyan lehet megoldani:
Ugyebár számot nem lehet bekérni, csak stringet. A string át kell alakítani int-re.
Tehát pl
valtozo = Convert.Int32(ConsoleReadline());
Akkor a változóba már intként van benne amit bekértünk inputrol.
Na ja. De ez int32, persze lehet int16-ot is. De ha pl 1-10-ig akarunk csak egy számot akkor az memória pazarlás. Mert mindegy, hogy 1 vagy 100000 az érték ugyannyit foglal le az int32.
Szóval, hogy lehet, hogy csak sima int típus legyen?
int = Int32.... 4 byte.
Ha egy bájtot akarsz, ott a bájt tipus. Nem mintha számítana hogy 1 byte vagy 4...
Ha egy bájtot akarnál 1-10ig terjedő számra, akkor is 4 bájtot foglal le, mert a program 32 bites, és így egy memóriablokk annyi területet foglal. Annak érdekében hogy megfelelő helyen legyen minden változó a memóriában, kiegészíti, csak nem látod.
Például két bájt változó kell neked. Ekkor írod, hogy
byte a;
byte b;
Azonban fordítás után így fog kinézni:
byte a;
byte gap1[3]; //Ez eddig egy memória"szó"
byte b;
byte gap2[3]; //Idáig a következő
Most a .NET nem biztos hogy így kiegészíti láthatóan, de akkor is a háttérben az IL interpreter úgy használja
Az int egy kulcsszó és alias az Int32-re.
8 bites a byte/Byte típus.
Miért hülyítitek? A kérdezőnek van igaza.
Az is marhaság, hogy a byte kiegészülne 32 bitre. Nem egészül ki. Marad 8 bites.
"De ha ott a byte ami 8 bites, akkor miért van külön int tipusú ami ugyancsak 8 bites?"
Pont azért, hogy akkora legyen a helyfoglalás, amekkora kell. Ne több. A programozók számára nem csak 72 GB memóriával szerelt PC létezik, hanem van olyan proci is, amely mellett csak 2 kB memó van vagy még annyi sem.
A kutyaütők számára létezik csak a 72 GB-os PC.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!