このエントリーをはてなブックマークに追加


指定した文字数分コピーする・memmove

memcpyなどを使用して同様のことを実現することもできますが、本資料ではmemmoveを使用した記事です。
以下にmemmoveを使用したC言語サンプルソースを記します。


スポンサーリンク

関連記事

memmove関数の書式など

以下にmemmove関数の書式等を記します。

  • 必要なインクルード
    #include <string.h>
  • 書式
    void *memmove(void *dest, const void *src, size_t n);
  • 引数
    1つ目: コピー先 2つめ: コピー元 3つ目: コピーする数
  • 戻り値
    なし

memmoveを使用したサンプルソース

以下にmemmoveを使用したC言語サンプルソースを記します。 &ref(): File not found: "memmove.c" at page "メモリ/指定した文字数分コピーする・memmove"; (改行コードLF)

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

#define BUFSIZE 10

int main(void)
{
    int i;
    char src1[] = { "0123456789" };
    char src2[] = { "0123456789" };
    char *dest ="dest";

    memmove(&src1[0], &src1[5], 5);
    printf("%s\n", src1);

    memmove(src2, dest, strlen(dest));
    printf("%s\n", src2);

    return 0;
}

以下にコンパイルし実行した結果を記します。

$ gcc memmove.c -o memmove
$ ./memmove 
5678956789
dest456789

以上、memmoveのサンプルソースでした。


スポンサーリンク

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 21:01:00