文字列をコピーする

strcpy、wcscpy、_mbscpy

【書式】

char *strcpy(
   char *strDestination,
   const char *strSource
);
wchar_t *wcscpy(
   wchar_t *strDestination,
   const wchar_t *strSource
);
unsigned char *_mbscpy(
   unsigned char *strDestination,
   const unsigned char *strSource
);

【引数】

strDestination 対象文字列
strSource NULLで終わる元の文字列

【戻り値】

成功時 コピー先の文字列
失敗時 エラーを示す戻り値は予約されていません

【機能】

strcpy 関数は、終端の NULL 文字を含めて、strSource を strDestination で指定された位置にコピーします。 コピー元とコピー先の文字列が重なり合っているときの strcpy 関数の動作は未定義です。
strcpy は、strSource をコピーする前に strDestination に十分な領域があるかどうかを確認ません。
wcscpy関数と_mbscpy関数は、strcpy関数のワイド文字バージョンとマルチバイト文字バージョンです。 wcscpy関数の引数と戻り値はワイド文字列で、_mbscpy関数の引数と戻り値はマルチバイト文字列です。 それ以外では、これらの関数の動作は同じです。

【インクルードファイル】

strcpy関数関数 string.h
wcscpy関数関数 string.h または wchar.h
_mbscpy関数関数 mbstring.h

【必要追加ライブラリ】

なし

使用例

〈サンプルプログラム〉

#include <string.h>
#include <stdio.h>

int main(void)
{
    char string[20]={'\0'};

    strcpy(string, "文字列のコピー");
    printf("文字列 = %s\n", string);

    return 0;
}

〈出力〉

文字列 = 文字列のコピー