RkCvtHan / RkwCvtHan(3) 全角記号,英数字,ひらがな,カタカナを半角文字に変換する

形式

#include <canna/RK.h>
int RkCvtHan(dst, maxdst, src, srclen)
unsigned char *dst;
int maxdst;
unsigned char *src;
int srclen;
int RkwCvtHan(dst, maxdst, src, srclen)
wchar_t *dst;
int maxdst;
wchar_t *src;
int srclen;

説明

RkCvtHan は,領域 src から開始する srclen バイトの全角記号,英数字,ひらがな,カタカナデータを半角文字に変換します. src 中のヌル文字は文字列の終わりとは解釈されません.変換された結果は領域 dst に格納され,変換対象とならない文字はそのままコピーされます. 変換されたコードのバイト数が maxdst -1 を超える場合には, EUC コードの文字境界に合わせて切り捨てられます. さらに dst の最後には可能ならばヌル文字が付け加えられます. コードの表現は srcdst とも EUC コードが用いられます.

RkwCvtHan では RkCvtHan の引数が wchar_t になっています. 引数で長さを表すものはバイト長ではなく文字長を表します.

には NULL を与えることができます. この場合,変換されたコードは すべて無視されます.

戻り値

変換されたコードのバイト数(または RkwCvtHan の場合は文字長)を返します. maxdst が不正な場合には 0 を返します.