Skip to content

Latest commit

 

History

History
52 lines (42 loc) · 1.38 KB

File metadata and controls

52 lines (42 loc) · 1.38 KB

BUFSIZ

  • cstdio[meta header]
  • macro[meta id-type]
#define BUFSIZ unspecified
  • unspecified[italic]

概要

setbuf()関数で使われる標準入出力のバッファサイズを表すマクロ。

このマクロは、標準入出力関数で使用されるデフォルトのバッファサイズを定義する。値は実装依存であり、256バイト以上であることは保証されているが、一般的には512バイトや1024バイトなどの値が使用される。

#include <cstdio>

int main() {
  // BUFSIZの値を表示
  std::printf("BUFSIZ = %d\n", BUFSIZ);
  
  // バッファサイズを指定してファイルを開く
  char buffer[BUFSIZ];
  std::FILE* file = std::fopen("test.txt", "w");
  if (file) {
    // バッファを設定
    std::setbuf(file, buffer);
    std::fprintf(file, "Hello, World!\n");
    std::fclose(file);
  }
  
  return 0;
}
  • BUFSIZ[color ff0000]
  • std::printf[link /reference/cstdio/printf.md]
  • std::fopen[link /reference/cstdio/fopen.md]
  • std::setbuf[link /reference/cstdio/setbuf.md.nolink]
  • std::fprintf[link /reference/cstdio/fprintf.md]
  • std::fclose[link /reference/cstdio/fclose.md]

出力例

BUFSIZ = 1024

処理系