sprintf

読み:エス・プリント・エフ
外語:sprintf 英語
品詞:名詞

Cで、文字列書式に従って、文字配列に書き込む関数。

目次

#include <stdio.h>

int sprintf(char *str, const char *format, ...);

第二引数に指定するフォーマット文字列は、printfと同じである。

標準出力に出力する代わりに、文字配列に書き込むことを目的とした関数である。

sprintfは、strcpy、strcatと共に、頻繁にバッファーオーバーフローを起こす、代表的な三大文字列関数の一つである。

なぜなら、結果を格納する先の大きさを指定できないからである。

そこで現在は、第2引数に第1引数の大きさを記載する機能を追加したsnprintf関数が提供され、C99以降で標準化されている。

特段の理由がないのであれば、sprintfではなくsnprintfを用いるべきである。

用語の所属
C
関連する用語
printf
バッファーオーバーフロー
snprintf

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club