Hirdetés
- Adatmentés - HDD - SSD - Flash
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- ThinkPad (NEM IdeaPad)
- Mégis mi értelme az Xbox PC-nek, ha limitálja a hardverválasztékot?
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- OLED TV topic
- Milyen hangkártyát vegyek?
- E-book olvasók
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Riasztó topik
Új hozzászólás Aktív témák
-
kingabo
őstag
válasz
Szőkecica #2412 üzenetére
"Azt hittem hogy az ami előtt van egy - jel :-)"
De kell valahogy azt a '-' jelet tárolnod. Akkor próbálom visszafelé. Van a "sima" char, ami -128 és 127 közötti értéket vehet fel. Ez binárisan úgy van megvalósítva (nagy vonalakban, részletesebben kettes komplemens szám ábrázolás), hogy van 8db bited, az első bit elmegy az előjel bitnek, a maradék 7 biten pedig lehet tárolni 2^7 értéket vagyis 128-at (a pozitív oldalon azért csak 127-ig megy, mert a 128-adik érték a 0
). Ha a char elé odaírod, hogy unsigned, vagyis unsigned char ertek;, akkor előjel nélküli változót deklarálsz. Ekkor az előjelnek fenntartott bit is felhasználható értékes bitként, vagyis 2^8-an számot tudsz tárolni. Mivel mindkét esetben 8biten vagyis 1 byte-on tárolod az adatokat, ezért a sizeof ugyanazt a méretet fogja megadni. Ugyanez érvényes az pl az int-nél is, csak ott 1byte, helyett ált 4byte-on tárolod az adatokat.
Ha próbálgatni akarsz: deklarálj egy előjeles és egy előjel nélküli char-t. Az előjelesnek adj egy pozitív számot értékül, aztán kasztolással* add értékül a változót az előjel nélkülinek. Ugyanezt próbáld ki negatív számmal is, aztán szerep cserével, 127-nél nagyobb értéket adj az előjel nélkülinek és ezt a változót add értékül az előjelesnek. Ja és természetesen minden értékadás pár után írasd is ki, hogy lásd a különbségeket.
*kasztolás: egy adott típusú változót "átalakítani" másik típusúvá. (kisebb-ről nagyobbra, tehát pl: char-ról int-re megkötés nélkül lehet, de visszafelé nagy valószínűséggel adat vesztés lesz, mivel az int-be jóval nagyobb számok is beleférnek)
Pl: char elojeles = -5;
unsigned char elojelnelkuli = =(unsigned char) elojeles;Bocs ennél érthetőbben nem tudom elmagyarázni.
Ha valami kimaradt, vagy nem érthető, akkor kérdezz nyugodtan.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Adatmentés - HDD - SSD - Flash
- Formula-1
- Háztartási gépek
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Fogyjunk le!
- Kínai és egyéb olcsó órák topikja
- Otthoni hálózat és internet megosztás
- ThinkPad (NEM IdeaPad)
- IFA 2025: Nem is látszik, hogy strapatelefon
- Nők, nőügyek (18+)
- További aktív témák...
- Dell Latitude 5450 14" FHD IPS ULTRA 5 135U vPRO 12 Mag 16GB RAM 512GB NVME SSD 2028-ig Gar
- 2x LG 27GP850-B UltraGear / 1-3 ÉV GARANCIA!
- Dell Latitude 5500 i5-8365u / 16gb ddr4 / 500gb m.2 ssd / jó akku / töltő
- Kolink Rocket / Rocket Heavy / Rocket Heavy Vented / Rocket Complex mini / SFF számítógép házak
- Dell Inspiron 15 5502 i5-1135G7 /8gb ddr4 3200mhz/ 256gb ssd/ 87%-os akku / töltő
- Nvidia Quadro M2000/ P2000/ P4000/ RTX 4000/ RTX 5000/ RTX A2000
- iKing.Hu - Samsung Galaxy S25 Ultra Titanium Black Titán dizájn, Pro kamera és Galaxy AI-512GB
- iKing.Hu - Xiaomi 14 Ultra Ultra White Használt, karcmentes állapot, Kamerás csúcsmobil
- BESZÁMÍTÁS! GIGABYTE Z97X-Gaming 3 Z97 chipset alaplap garanciával hibátlan működéssel
- BESZÁMÍTÁS! Asus B760M i7 12700KF 32GB DDR4 512GB SSD RX 7700XT 12GB Zalman Z1 Plus CM 750W
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest