Skip to content

Latest commit

 

History

History
66 lines (46 loc) · 1.47 KB

File metadata and controls

66 lines (46 loc) · 1.47 KB

memset

  • cstring[meta header]
  • std[meta namespace]
  • function[meta id-type]
namespace std {
  void* memset(void* s, int c, size_t n);
}
  • size_t[link /reference/cstddef/size_t.md]

概要

メモリデータを指定した値で埋める。

効果

sが指すオブジェクトの先頭nバイトのそれぞれに、unsigned charに変換した値cを書き込む。

戻り値

sを返す。

備考

  • この関数は、フリースタンディング処理系でも使用できる。
  • 機密情報をメモリ上から確実に消去する用途では、書き込みが最適化によって除去されることがあるため、memset_explicitを使用する。

#include <cstring>
#include <iostream>

int main()
{
  char buf[6];

  // 先頭5バイトを'A'で埋める
  std::memset(buf, 'A', 5);
  buf[5] = '\0';

  std::cout << buf << std::endl;
}
  • std::memset[color ff0000]

出力

AAAAA

バージョン

言語

  • C++98

関連項目

  • memset_explicit: メモリデータを指定した値で埋める(最適化によって除去されない)
  • memcpy: メモリデータをコピーする

参照