2010年10月のlog - project-enigma

2010年10月のlog

>> Site top >> weblog >> 月別アーカイブ >> 2010年10月のlog

最終更新日付:2013/11/16 23:43:23


文字コードの話

2010 年 10 月 19 日

多分2009年の春頃からだ。文字コードを簡単に扱える仕組みを作りたいな、と思うようになった。いつもながら『欲しい』でなく『作りたい』なのがポイントだ。

Read more

 

文字コードの話 - 2

2010 年 10 月 20 日

エンコーディングを意識しなければならない文字列処理というのは多い。文字を検索する strchr で検索文字を1バイトのASCII文字にした場合、検索対象文字列が Shift-JISだと誤ったマッチ結果を返す可能性がある。文字列を検索する strstr でも同様だ。これは、Shift-JISにおけるマルチバイト文字の後続バイトでASCIIの文字コードが使用されうるためだ。ポインタを1文字進めるにしても、ASCII なら常に1バイトずつだしutf-16なら常に2バイトだが、EUC-JPは1〜3バイト、utf-8に至っては最大で6バイトだ。こうした諸々をうまく取り扱いたいと思ったわけだ。

Read more

 

文字コードの話 - 3

2010 年 10 月 21 日

通常はインライン展開で効率を重視し、複数のエンコーディングを動的に切替えたい場合は仮想関数が使える‥‥‥そんな都合のいい設計をどう実装するか。

Read more

 

文字コードの話 - 4

2010 年 10 月 22 日

とりあえず、メインの話題は前回で終わってしまったので、今回から隅っこの面倒な話題を扱うとしよう。まずは文字列を指すポインタの型についてだ。

Read more

 

色々と立て直しを

2010 年 10 月 25 日

今回は文字コードの話はおやすみして、久しぶりに使い始めた CVS の話。

Read more

 

文字コードの話 - 5

2010 年 10 月 27 日

少し御無沙汰してしまった。まだ書くことはあるのできちんと習慣付けるようにしなければ。今回は、前回の続きを簡単に。

Read more

 

文字コードの話 - 6

2010 年 10 月 28 日

さて、次はこの仕組みが具体的に何をサービスしているか、という話だ。

原則としては、エンコーディングの違いによって実装に違いが出るような文字列操作および文字操作の関数を実装している。その中でももっとも基本的なのは、ポインタを「1文字分」前後させる Increment/Decrement 、およびポインタが指す文字の値を取得するGetCharValue、現在のポインタ位置に指定した値の文字を設定する PlaceChar だろう。これらをベースとして、各種のメソッドが実装される。

Read more

 

文字コードの話 - 7

2010 年 10 月 30 日

前回の最後で、エンコーディングの自動判別と変換について、まだないが欲しい機能だと書いた。それから今日までの間に、少しだけ着手してしまった。

Read more

 

Ghost による HDD 換装の顛末

2010 年 10 月 31 日

自宅のデスクトップ PC は、かれこれ6年くらい使っている。現在の HDD をいつから使い始めたのか定かでないが、おそらく4年くらいはそのままだろう。以前から起動時に固ってしまったり、色々と不穏な徴候があった。そろそろ限界のようだ。

Read more

 

 


Copyright(C) 2005-2017 project-enigma.
Generated by CL-PREFAB.