C言語例文集


 memset()    メモリ領域を指定する文字で埋める

ヘッダ string.h
書式 void *memset(void *s, int c, size_t n);
引数 s … メモリ領域のポインタ
c … メモリ領域に設定する文字
n … 文字cを設定するバイト数
戻り値 sのポインタ
解説 メモリ領域sの先頭からnバイトを文字cに設定する関数。メモリ領域を'\0'に設定すれば、配列の初期化などに使用できる。


<サンプルプログラム>

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

#define BUF_SIZE 16

int main()
{
    // 変数定義
    char buf1[BUF_SIZE];
    char buf2[BUF_SIZE];

    // 変数初期化
    memset(buf1, '\0', BUF_SIZE);
    memset(buf2, '\0', BUF_SIZE);

    // 配列の内容を表示
    printf("初期化後の配列の要素を表示。\n");
    printf("buf1:%s\n", buf1);
    printf("buf2:%s\n", buf2);

    // メモリ領域を特定の文字で埋める
    memset(buf1, 'a', 4);  // buf1の最初の4バイトをaにする
    memset(buf1, 'b', 2);  // buf1の最初の2バイトをbにする
    memset(buf2, 'c', 3);  // buf2の最初の3バイトをcにする

    // 配列の内容を表示
    printf("配列の要素を表示。\n");
    printf("buf1:%s\n", buf1);
    printf("buf2:%s\n", buf2);

    return 0;
}
/****************************************************************************/

<実行結果>



<Topページ>

Copyright(c) 2010 , cgengor
このWebページの内容を無断で複製または転載することを禁じます。
このWebページの情報を利用することにより発生したいかなる損害について著作権保有者はいっさいの責任を負いません。