[C言語]memset()で配列を空文字で埋めるには?

C言語

どうも、ちょげ(@chogetarou)です。

memset()を使ってCharの配列(array)を空文字で埋める方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

memset()を使ってCharの配列(array)を空文字で埋めるには、3つの引数を使います。

まず、memset()を呼び出します。

memset()の第1引数に対象の配列、第2引数に空文字(「””」もしくは「’\0’」)、第3引数にsizeof()を指定します。

そして、sizeof()の引数に、対象の配列を指定します。

//myArray=対象の配列
memset(myArray, '\0', sizeof(myArray));
//「""」で埋める場合
memset(myArray, "", sizeof(myArray));

上記のmemset()は、配列を空文字で埋めます。

使用例

#include <stdio.h>

int main(void){
    char myArray[5] = { 'a', 'b', 'c', 'd', 'e' };
    
    memset(myArray, '\0', sizeof(myArray));
    
    int n = sizeof(myArray) / sizeof(myArray[0]);
    for (int i = 0; i < n; i++) {
        printf("[%c],", myArray[i]);
    }
    
    return 0;
}
出力:
[],[],[],[],[],

コメント

タイトルとURLをコピーしました