タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

Programmingとc_c++とcharacter_encodingに関するpipeheadのブックマーク (4)

  • プログラミング/小ネタ集/Unicode対応コーディング - ルーチェ's Homepage

    概要 † このコンテンツは、C/C++言語でWindowsプログラミングをしていて、かつMFCやATLにある CString クラスを使っていない人くらいにしか実益はないかもしれません。 が、内容的に知っておいて損はないことなので書いておきます。 概要としては、 LPTSTR 型や TCHAR 型について知り、NT系(Unicode環境)と9x系(非Unicode環境)のどちらにも最適化できるソースコードを書こうというお話です。 TCHAR 型を見たことがなくても、 LPTSTR 型なら見たことがある人も結構いるでしょう。 初心〜中級のWindowsプログラマは、大抵は LPTSTR 型と LPSTR 型の違いを特に意識せずにコードを書いています。 しかし、この二つの型を混同するのは非常に危険なことです。 まずはこれらの型の定義を説明し、 TCHAR 型を用いることでUnicode対応プロ

  • Paken.NET | TCHAR型のススメ

    C/C++Windowsプログラミングをやり始めたとき、誰もが一度は嫌になるあの謎のデータ型。 "LPCTSTR"なんてのはその典型例です。 しかし、これが何かを知らぬまま放っておいてる、ということが意外とありがちなんですよね。 というわけで、一応簡単に解説しておくことにしよう、と思ったまでです。 ※ 開発環境は、Microsoft Visual C++ 2005 を想定しています。 1.UNICODE 文字コードとはつまり、数値と文字の関係を示したものです。 文字'a'は128で表し、文字'b'は129で表し・・・と文字と数値が一対一で対応して定められています。(数値は適当です) UNICODEも、その文字コードの一種で、古い文字コードのASCIIに比べて新しいものです。 NT系のWindowsには全て対応しているので、現在のほとんどの環境がUNICODE対応となっています。 だったら

  • char、wchar_t(WCHAR)とTCHAR(dinop.com)

    文字列を扱う型としてよく知られているchar型はsizeof(char)=1バイトの型だ。 charに代入できるのは半角文字1文字で、漢字など2バイトからなる全角文字を代入したいとき は(微妙な表現だが)2つのcharが必要になる。 ユニコードを扱うための型として用意されたのがこのwchar_tだ。sizeof(wchar_t)=2バイトの 型でありchar型よりも使用バイト数が多い。 wchar_tに代入できるのはユニコードでの1文字で、半角や全角文字などの区別はない。 ヘッダーの中では以下のように宣言されている。 typedef unsigned short wchar_t; typedef unsigned short WCHAR; // wc, 16-bit UNICODE character つまりwchar_tとWCHARのどちらもunsigned short型として定義されて

  • ワイド文字 - Wikipedia

    ワイド文字(ワイドもじ、英: wide character)とは、主にC言語およびC++における文法要素で、1文字あたりのバイト数を通常より多くしたデータ型である。 C言語やC++の基実行文字集合は通常、ASCIIのサブセットの文字種からなる。ただし実際の文字コードが何であるかは規定されていない。 漢字のような拡張実行文字集合は、通常マルチバイト文字として扱われるが、1文字を構成するバイト数が可変長であり、来1つの文字でありながら複数の文字の組(あるいは文字列)として扱わなければならないなどの不便がある。そうした問題を解消するために、1文字を1つの整数値で扱えるようにすることを目指したのがワイド文字である。 C言語では1995年の ISO/IEC 9899/AMD1:1995 より、wchar_t 型や <wchar.h>、<wctype.h> などのヘッダーファイルが追加になった。ワ

    pipehead
    pipehead 2003/08/09
    wchar_t, char16_t, char32_t
  • 1