_mbccpy

提供: RAD Studio
移動先: 案内検索

string.h:インデックス への移動


ヘッダー ファイル

mbstring.h

カテゴリ

メモリおよび文字列操作ルーチン

プロトタイプ

void _mbccpy(unsigned char *dest, unsigned char *src);

説明

_mbccpy 関数は src から dest にマルチバイト文字をコピーします。 _mbccpy 関数は、src ポインタがリード バイトを参照するように _ismbblead を暗黙的に呼び出します。 src がリード バイトを参照しない場合、コピーは実行されません。

戻り値

なし。

# include <mbstring.h>
# include <iostream>

char* concat_strings(char* input, char* add) {
	/* 文字列 add の長さを取得 */
	int add_len = strlen(add);
	char* result;

	/* 何もすることがなければ終了 */
	if (!add || !add_len)
		return input;

	/* add を保持できるように input を拡張 */
	_mbsninc(input, add_len);

	result = input;
	/* コピーを開始できるように input の末尾に移動 */
	input += strlen(input);

	/* 1 文字ずつコピー */
	while (*add) {
		_mbccpy(input, add);
		add++;
		input++;
	}

	/* 文字列の末尾を示すマークを付ける */
	*input = '\0';
	return result;
}

int main() {
	char* d = new char;
	char* s = new char;
	char* r = new char;
	s = "Hello ";
	d = "world!";
	r = concat_strings(s, d);
	std::cout << r << std::endl;

	return 0;

}