char16_t | Programming Place Plus C言語編 標準ライブラリのリファレンス

トップページC言語編標準ライブラリのリファレンス(名前順)

トップページC言語編標準ライブラリのリファレンス(ヘッダ別)


char16_t

概要 16ビットの文字をあつかう型。
ヘッダ uchar.h
形式 typedef uint_least16_t char16_t;
詳細

16ビットで表現される文字を表す型。


__STDC_UTF_16__ 事前定義マクロが 1 に置換される処理系においては UTF-16 でエンコーディングされた文字を扱う。それ以外の場合のエンコーディング形式は処理系定義。C23規格から、このマクロは必ず 1 に置換されるようになり、UTF-16 を使うことが保証されている[1]


実体としては 16ビットの符号無し整数型📘であり、uint_least16_t型と同一である。
注意 C++ (C++11以降) においては、char16_t はキーワードだが、C言語では typedef である。
使用例
#include <stdio.h>
#include <uchar.h>

int main(void)
{
    char16_t c = u'あ';

    printf("%x\n", c);
}

実行結果:

3042
関連

32ビットで表現される文字(おそらく、UTF-32)を扱う char32_t型がある。C23 からは UTF-8 で表現される文字を扱う char8_t型 がある。

マルチバイト文字へ変換するために c16rtomb関数、マルチバイト文字から変換するために mbrtoc16関数がある。
解説章 第47章


参考リンク 🔗

本ページはアフィリエイトプログラムによる収益を得ています。
以下のリンクから商品を購入されると、Programming Place 管理者に紹介料が支払われています。


更新履歴 🔗



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る