abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 17:50 | Komunita

Nadace The Document Foundation (TDF) zastřešující vývoj svobodného kancelářského balíku LibreOffice slaví 5 let od svého oficiálního vzniku. Nadace byla představena 28. září 2010. Formálně byla založena ale až 17. února 2012.

Ladislav Hagara | Komentářů: 0
dnes 12:50 | Komunita

Mozilla.cz informuje, že dosud experimentální funkce Page Shot z programu Firefox Test Pilot (zprávička) se stane součástí Firefoxu. Page Shot je nástroj pro vytváření snímků webových stránek. Umí výběr oblasti, prvku stránky (např. odstavce), nebo uložení snímku celé stránky. Snímky lze ukládat na disk nebo nahrávat na server Mozilly. Nedávno bylo oznámeno, že se součástí Firefoxu stane Activity Stream.

Ladislav Hagara | Komentářů: 3
dnes 04:10 | Nová verze

Po 10 týdnech vývoje od vydání Linuxu 4.9 (zprávička) oznámil Linus Torvalds, mj. již 20 let žijící v USA, vydání Linuxu 4.10 (LKML). Přehled nových vlastností a vylepšení například na Kernel Newbies a v Jaderných novinách (1, 2 a 3). Kódové jméno Linuxu 4.10 je Fearless Coyote.

Ladislav Hagara | Komentářů: 1
včera 15:55 | Zajímavý projekt

Vyzkoušet si příkazy a vyřešit několik úkolů lze na stránkách Commandline Challenge (CMD Challenge). Úkoly lze řešit různými způsoby, důležitý je výsledek. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

Ladislav Hagara | Komentářů: 16
18.2. 17:35 | Bezpečnostní upozornění

Německá Bundesnetzagentur (obdoba českého ČTU) zakázala na německém území prodej panenky Cayla kvůli „špionáži“ dětí. Tato elektronická hračka obsahuje mikrofon, reproduktor a kameru a bezdrátové komunikační rozhraní, pomocí kterého se hračka připojuje na servery výrobce. Takovýmto způsobem může hračka pomocí umělé inteligence „odpovídat“ na dotazy dítěte. Hlavní problém bude ale asi někde jinde, podle prvotních zpráv může

… více »
Petr Tomášek | Komentářů: 29
17.2. 15:30 | Bezpečnostní upozornění

CSIRT.CZ upozorňuje, že bezpečnostní experti objevili nový typ malwaru, jenž cílí na open source e-commerce platformu Magento. Malware je zajímavý tím, že se jedná o první svého druhu, jehož kód zůstává skrytý v SQL databázi zasaženého e-shopu. Škodlivý kód je volán pomocí tzv. SQL trigerru, který je spouštěn při každém vytvoření objednávky v systému.

Ladislav Hagara | Komentářů: 3
17.2. 09:00 | Nová verze

Bylo vydáno Ubuntu 16.04.2 LTS, tj. druhé opravné vydání Ubuntu 16.04 LTS s kódovým názvem Xenial Xerus. Přehled novinek v poznámkách k vydání a v přehledu změn.

Ladislav Hagara | Komentářů: 56
17.2. 06:00 | Zajímavý článek

Pavel Tišnovský se v dvoudílném článku na MojeFedora.cz věnuje tvorbě pluginů (modulů) pro bitmapový grafický editor GIMP. Pomocí pluginů lze GIMP rozšiřovat o další funkce. Implementovat lze například nové filtry nebo pomocné utility pro tvorbu animací či poloautomatickou retuš snímků.

Ladislav Hagara | Komentářů: 6
16.2. 23:32 | Komunita

Do 30. března se lze přihlásit do dalšího kola programu Outreachy, jehož cílem je přitáhnout do světa svobodného a otevřeného softwaru lidi ze skupin, jež jsou ve světě svobodného a otevřeného softwaru málo zastoupeny. Za 3 měsíce práce, od 30. května do 30. srpna 2017, v participujících organizacích lze vydělat 5 500 USD. Jedná se již o 14. kolo tohoto programu.

Ladislav Hagara | Komentářů: 11
16.2. 23:13 | Nová verze

Byla vydána verze 0.92.1 svobodného multiplatformního vektorového grafického editoru Inkscape. Přehled novinek v poznámkách k vydání. Řešen je mimo jiné problém s verzí 0.92, jež rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Více v příspěvku na blogu Davida Revoye, autora open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu.

Ladislav Hagara | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 668 hlasů
 Komentářů: 53, poslední dnes 18:38
Rozcestník
Reklama

Dotaz: nekorektný výpis ASCII tabuľky

Libco avatar 5.1.2013 11:13 Libco | skóre: 8 | Banska Bystrica - sk
nekorektný výpis ASCII tabuľky
Přečteno: 646×
Příloha:
Pod Ubuntu mám IDE Code::Blocks.
V prílohe je jednoduchý program na výpis ASCII tabuľky v jazyku C.
Problém je v tom, že vypíše len znaky s decimálnou hodnotou od 33 do 126.
0 - 32 sú neviditeľné, to je v poriadku.
127 - 255 sú ale viditeľné a mne to vypisuje všade 0 (nuly).
Vie mi niekto poradiť, ako nastaviť Code::Blocks aby to fungovalo korektne?

Myslím, že treba nastaviť encoding na výstupe, ale neviem ako.
lama

Řešení dotazu:


Odpovědi

mess avatar 5.1.2013 11:34 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Neměl bys lepší použít funkci int putchar(int c); ? Každopádně to, co uvidíš na výstupu, bude záviset na zvoleném kódování. Vždycky se ti vypíše tabulka toho, které budeš mít zrovna zvolené. Takže si vyber kódování, jehož tabulku chceš vypsat; žádné jediné správné nastavení v tomhle případě není.
Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
5.1.2013 11:36 Ariczek | skóre: 4
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
problem bude s tím, že char je signed... takže jsou v něm jen hodnoty od -128 do 127. Změň tu definici na unsigned char.
5.1.2013 11:57 Kit
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
ASCII je v rozsahu 0..127. Takže program funguje.
Libco avatar 5.1.2013 12:37 Libco | skóre: 8 | Banska Bystrica - sk
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Myslel som aj doplnkovú tabulku. Použitie, napr. diakritika v programe.
lama
5.1.2013 12:48 Kit
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Pokud používáš Ubuntu, znaky s diakritikou v programu budou nejspíš v UTF-8. Tady s ASCII nepochodíš.

Můžeš si to prověřit programem hexdump.
pavlix avatar 5.1.2013 13:00 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Mám za to, že ASCII je jasně definované a osmibitová kódování s pevnou šířkou znaku považuju za překonaná.
5.1.2013 15:21 Petr Šobáň | skóre: 79 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
ASCI není pevně definované - pevně je definované pouze 0 až 127, od 128 do 255 si to určuje každý sám - jsou různé verze druhé půlky....IBM, ISO, KAM, LAT

Jinak i znaky 0 až 32 se daly tisknout a grafika je měla ve své rom paměti.

Jinak viz tabulka:

tabulka ascii znaků

wiki ASCII

Jinak k čemu to potřebuješ? Dnes se to už nepoužívá i když někde to přežívá.
5.1.2013 16:16 l4m4
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Nesmysly.

ASCII kódování je přesně definovnáno standarem vydaným ANSI.

I poslední verze tohoto standardu z roku 1986 definuje sedmibitové kódování.

Ta ‚druhá půlka‘ nemá s ASCII nic společného.

Kdyby sis tak přečetl aspoň tu stránku na Wikipedii.
Libco avatar 5.1.2013 16:17 Libco | skóre: 8 | Banska Bystrica - sk
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Napríklad úloha:
3) Vytvořte program pomocí cyklu,který vám na obrazovku vypíše všechny znaky, jako byste psali např. @ (Alt+64). Program se Vám bude hodit, ptž vypíše jak české znaky, tak určité znaky, o kterých možná ani nevíte. Pořád nevíte jak nato? Je to prosté, využijte schopnosti jak dostat češtinu do programu. Detailisti mohou ještě ve výpisu ukázat, jaký kód ke kterému znaku patří.

Úloha to priamo vyžaduje. Vo win to ide, ale v linuxe je problém.
lama
5.1.2013 16:30 l4m4
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Po nastavení HKCU\Control Panel\Input Method\EnableHexNumpad na 1 lze psát pomocí Alt-číselných sekvencí kterýkoli znak Unicode (není to default akorát kvůli konzervativnosti uživatelů, kterým to rozbilo některé naučené sekvence). Takže pokud to má něco vypsat, tak kompletní Unicode.
Libco avatar 5.1.2013 17:26 Libco | skóre: 8 | Banska Bystrica - sk
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Hľadal som "HKCU" aj "Control Panel" v CodeBlocku (ďalej len CB) aj v Ubuntu 12.04.1 a nenašiel, takže neviem ako to mám nastaviť.
V nastavení CB je možnosť nastaviť možno 40 rôznych kódovaní, to mám všetky skúšať zaradom? :-D
Ešte sa pozriem ako je to nastavené v CB vo win7. Možno tam niečo zaujímavé nájdem.
lama
Jendа avatar 5.1.2013 17:35 Jendа | skóre: 73 | blog: Výlevníček | JO70FB
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Ta cesta byla cesta ve windowsím registru.

Přiznám se, že kdybych dostal podobné zadání, nevěděl bych, co s tím. Asi bych vypsal to, co ty, s tím, že na systému s UTF-8 (a dalšími vícebytovými kódováními) to prostě nebude fungovat.
Vox agroferti, vox Dei.
Libco avatar 5.1.2013 17:49 Libco | skóre: 8 | Banska Bystrica - sk
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Musí byť možnosť. Diakritika sa predsa bežne používa.
lama
Jendа avatar 5.1.2013 18:20 Jendа | skóre: 73 | blog: Výlevníček | JO70FB
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Ano, ale pomocí multibyte sekvencí. Takže si můžeš napsat generátor, který vygeneruje celé UTF-8 (je toho hodně).
Vox agroferti, vox Dei.
5.1.2013 17:52 Kit
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Není to tak složité. Počet jedniček zleva u prvního bytu znamená, kolik má znak v UTF-8 celkově bytů. Pokud je však těch jedniček víc než 6, jedná se o speciální byte.

Pokud je tam jen jedna jednička, je to pokračovací byte. Pokud je v nejvyšším bitu nula, je to znak ASCII.
Libco avatar 5.1.2013 18:00 Libco | skóre: 8 | Banska Bystrica - sk
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Tak to teda dík. Budem si to musieť preložiť na drobné a otestovať.
lama
5.1.2013 18:14 l4m4
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Na konverzi codepoint (tj. čísla znaku) do UTF-8 najdeš spoustu zrecyklovatelných příkladů, včetně Wikipedie, to by neměl být takový problém.

Následně když na windowsí konzoli spustíš

chcp 65001

měla by se přepnout do UTF-8 codepage, takže vypisování v UTF-8 by mělo začít dělat něco rozumného (s rozumným konsolovým fontem, což nemusí být nutně default).

Poslední problém pak je, že Unicode má bratru čtyři miliardy možných znaků (codepoints) ale akorát kolem 120 tisíc je zatím přiřazeno. Vypsat jen ty přiřazené nejde bez nějaké knihovny pro práci s Unicode, která obsahuje příslušnou databázi. Na školní úlohu je to ale asi trochu overkill...
5.1.2013 18:31 Kit
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Nestraš. Těch znaků jsou jen 2 miliardy.
Libco avatar 5.1.2013 18:51 Libco | skóre: 8 | Banska Bystrica - sk
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Vidím, že sa už bavíte. To som rád. Aj tak si myslím, že časom nájdem jednoduché riešenie. Nemám to ako úlohu, len ma to zaujalo ako ťažko riešiteľný problém.
lama
5.1.2013 18:51 l4m4
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Máš pravdu, v ISO 10646 je to jen do 2^31 (byť běžná implementace je unsigned). Ale máme-li být přesní, tak Unicode jde jen do 0x10FFFF, protože má jen 16 vrstev (planes), a skoro všechno je tak jako tak přiřazeno z té první, tj. BMP. Z hlediska tazatele tím diskuse asi trochu odivergovala...

Co platí: ASCII = 7 bitů, Unicode = spousta bitů, 8 bitů = chaos, nepoužívat.
Libco avatar 5.1.2013 19:07 Libco | skóre: 8 | Banska Bystrica - sk
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Vidím, že si v tom doma. Teraz budem vlezlý.
Čo tak zariadiť, aby to aj v linuxe fungovalo ako vo win?
lama
5.1.2013 19:15 Kit
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Napodobovat Windows v Linuxu? Tak na to zapomeň. V Linuxu to funguje dobře. Pokud chceš nástroj, který bez problému pracuje s Unicode, použij Javu, Python, PHP nebo cokoliv dalšího. V C raději jen pomocí nějaké knihovny, kterou ani neznám.
Jendа avatar 5.1.2013 19:24 Jendа | skóre: 73 | blog: Výlevníček | JO70FB
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Snad kdybys nastavil locales na nějaké non-UTF nebo použil recode/iconv pro konverzi z CP-1250 na UTF-8.
Vox agroferti, vox Dei.
Řešení 1× (Libco (tazatel))
Libco avatar 5.1.2013 19:29 Libco | skóre: 8 | Banska Bystrica - sk
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Ďakujem za upresnenie páni. Súhlasím so všetkým čo ste napísali. ;-)
Už nejaký čas viem, že nemá význam niečo znásilňovať.
lama
6.1.2013 10:37 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky

Locale mu bude k ničemu, protože on na výstup zapisuje bajty. Respektive to není dostatečné.

Přenositelné řešení je:

  1. Vybrat si znakovou sadu, kterou autor chce zobrazit (ASCII to opravdu není, to je definované jen od 0 do 127).
  2. Každý znak z dané sady převést do znakové sady terminálu, což při správně nastaveném systému odpovídá locale. Zde je třeba si uvědomit, že ne všechny znaky musí být možné převést. Prostě ne nutně je jedna sada podmnožinou druhé.
  3. Převedený znak vypsat na terminál. Zde je třeba si uvědomit, že terminál může některé znaky interpretovat jako řídící, takže se na obrazovce nemusí objevit nic nebo se může stát něco divného (třeba terminál pípne nebo se smaže nebo bude růžový).
6.1.2013 12:06 Matlák
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Problém té úlohy je prostě v tom, že je napsaná pro Microsoft Windows a kódování znaků Windows-1250. Zadavatel zřejmě netuší, že něco jako jiná kódování existuje, natož něco jako jiné operační systémy.

Prostě podle hesla kdo neumí učí.
pavlix avatar 6.1.2013 14:47 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Natož že windows dávno interně přešly na nějakou formu unicode.
pavlix avatar 6.1.2013 01:53 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
ASCI není pevně definované
ASCI možná ne, ale ASCII docela ano :).
Libco avatar 12.1.2013 09:59 Libco | skóre: 8 | Banska Bystrica - sk
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
Přílohy:
Chcem sa všetkým ospravedlniť za moju neznalosť.
Uvedená úloha prináša potrebu použitia doplnkovej ASCII tabuľky (čo sa týka diakritiky) len vo windows.
V linuxe to vôbec nie je potrebné. Tu sa diakritika vypisuje správne.
V prílohách je vidno rozdiel.
lama
12.1.2013 12:22 Petr Šobáň | skóre: 79 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: nekorektný výpis ASCII tabuľky
I windows používá UNICODE.

Ovšem v konzoli to asi mapuje na jejich CP1250.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.