- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- Elektromos rásegítésű kerékpárok
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- eBay-es kütyük kis pénzért
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Rap, Hip-hop 90'
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Új hozzászólás Aktív témák
-
alapz@j
tag
válasz
llaszlo #5726 üzenetére
Fogsz egy text editor, beleírod, hogy áÁ éÉ ... az összes ékezetes magyar betűt, kimented UTF8 kódolással, megnyitod egy hex editorral és már meg is vannak a bájtsorozataid a karakterekhez. Ha jól emlékszem, az összes magyar ékezetes karakter kódpontja két bájtosra kódolódik UTF8-ban, ez könnyít a munkán. Ezután írsz egy függvényt, ami unsigned char-ként végigmegy a sztringed bájtjain - ha az adott char < 128, akkor hagyományos módon kisbetűsítesz, ha pedig >= 128, akkor a fenti bájtsorozatokat cseréled.
-
alapz@j
tag
válasz
llaszlo #5724 üzenetére
Szerintem ne erőltesd a wchar-t, mert nagyon sötét erdőbe visz. Ha a bemeneti szövegeid sima ASCII kódolásúak, akkor a használt kódtábla szerint cserélgetheted a nagy- és kisbetűk bájtjait. Ha UTF8 kódolásúak, akkor írj egy olyan függvényt, ami nem csak egy bájtot, hanem egy bájtsorozatot cserél: pl. Á - d0 91 / á - d0 b1.
-
válasz
llaszlo #5720 üzenetére
"Még mindig ott tartok, hogy az ékezetes karaktereket két helyen tárolja a tömbben."
Mert UTF-8, ott meg csak az első 128 karakter fér el egy byte-ban.
Ha rendesen akarsz ASCII-n túli karakterekkel dolgozni, akkor nézd meg a wchar-t, de ott meg a tömb inicializálása lesz némileg munkás, mert ott kénytelen leszel a konkrét számértékeket bepötyögni, vagy kódból inicializálni.
-
zka67
őstag
válasz
llaszlo #5715 üzenetére
Szia, hát igen, az ékezetes karaktereket nem nagyon támogatják a fordítók. Tudod, van több száz kódlap, és egy toupper-hez nem biztos hogy megérné mindegyiket beletenni, mert nem csak magyarok használják a fordítóprogramokat. Csak megjegyzem, hogy magyar kódlapból is van több tucat... melyiket szeretnéd használni? Az UTF-8 pl két vagy több karakteren ábrázolja az ékezetes betűket...
Ha neked megfelel pl. a Windows 1250-es vagy az ISO-8859, akkor egyszerű lesz a dolgod:
Nem kell külön vizsgálnod semmi, csinálsz egy 256 elemű tömböt, amiben 0 értéke van az egyéb karaktereknek, és a kis és nagybetűkhöz (amennyiben nem különbözteted meg őket) ugyan azokat az értékeket írod be. Ha szükséges a hiba kiírása ha egyéb karaktert kapsz, akkor az egyéb karaktereknek adsz pl. -1 értéket, és mielőtt hozzáadod az eredményhez, ezt figyeled.
-
zka67
őstag
válasz
llaszlo #5711 üzenetére
Szia, van egy kis ellentmondás a feladatodban:
Ebben csakis betűk szerepelhetnek. Ha más karakter is van, akkor hibaüzenet.
A space-t ne vegye figyelembe.Ha feltételezzük, hogy betűk és szóközök lehetnem az inputban, akkor az isalpha és az isspace lesznek a barátaid.
Utána már csak egy táblázatra lesz szükséged, amit csinálhatsz akár úgy is, hogy 256 elemű, vagy úgy is, hogy 64 elemű. Az első változat előnye, hogy ott meg tudod adni a space karakternek a 0 értéket, nem kell kétszer vizsgálnod a karaktert. A második változatnál pedig kivonsz 0x40-et a karakter kódjából és azt használod a tömb indexekét, ekkor az 'A'-1 karakter értéke lesz a tömb első eleme.
Ha a kisbetű és a nagybetű nincs megkülönböztetve, akkor elég egy 26 elemű tömb is a betűk értékeinek, ebben az esetben még a toupper-re is szükséged lesz, és 'A'-t vonsz ki a karaktered értékéből az indexhez.
Ha nem 256 elemű a tömböd, akkor kétszer is meg kell vizsgálnod a karaktert, hogy valóban betű-e.
-
buherton
őstag
Ú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!
- Fejhallgató erősítő és DAC topik
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy S24 FE - később
- Formula-1
- Luck Dragon: Asszociációs játék. :)
- Lakáshitel, lakásvásárlás
- Autós topik
- World of Tanks - MMO
- Kerékpárosok, bringások ide!
- Autós topik látogatók beszélgetős, offolós topikja
- További aktív témák...
- Asus B85M-Plus + I3-4170 Processzor
- QNAP TS-932X - 10 gigabites NAS - 5x4TB HDD + 4x400G SSD
- SPIRIT OF GAMER Race Wheel PRO 2 kormány minden tartozékával mekgímélt állapotban eladó!
- Playstation 5 Drive Edition 825GB (CFI-1116A), 6 hónap garanciával, Bp-i üzletből eladó!
- Apple Watch Series 7 41mm NIKE GPS
- Lenovo ThinkPad X270 (16) - i5-7300U, 16GB, 512GB SSD, 12" FULL HD
- Azonnali készpénzes Microsoft XBOX Series S és Series X felvásárlás személyesen/csomagküldéssel
- Bomba ár! Lenovo ThinkPad T490s - i7-8GEN I 16GB I 256SSD I 14" WQHD HDR I Cam I W11 I Gari!
- HIBÁTLAN iPhone 13 mini 256GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3041, 96% Akkumulátor
- MacBook White unibody eladó töltőárban
Állásajánlatok
Cég: FOTC
Város: Budapest