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


メモリの比較を行う・memcmp

指定したメモリ番地とメモリ番地の内容比較を行うmemcmp関数のC言語サンプルソースを以下に記します。


スポンサーリンク

関連記事

memcmpの書式等

  • 必要なインクルードファイル
    #include <string.h>
  • memsetの書式
    int memcmp(const void *s1, const void *s2, size_t n);
  • 戻り値
    同じ内容の場合は0が返却されます。
    異なる場合は0以外の値が返却されます。
  • 引数
    1つ目: 比較する内容が格納されているアドレス
    2つ目: 比較する内容が格納されているアドレス
    3つ目: 比較するバイト数

memcmpを使用したC言語サンプルコード

以下にmemcmpを使用したサンプルコードおよび実行した結果を記します。

filememcmp.c (改行コードLF)

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

#define BUFSIZE 10

int main(void)
{
    char a[]    = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    char aa[]   = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    char aaa[]  = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 100};

    printf("memcmp(a, aa, sizeof(a)) = %d\n", memcmp(a, aa, sizeof(a)));
    printf("memcmp(a, aaa, sizeof(a)) = %d\n", memcmp(a, aaa, sizeof(a)));

    return 0;
}

以下に上記のC言語サンプルコードをコンパイルし実行した時の出力を記します。

$ gcc memcmp.c -o memcmp
$ ./memcmp 
memcmp(a, aa, sizeof(a)) = 0
memcmp(a, aaa, sizeof(a)) = -1

以上、memcmpのC言語サンプルコードと実行例でした。


スポンサーリンク

添付ファイル: filememcmp.c 162件 [詳細]

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