🔧 入出力 ・ stdio.h ・ C89
sprintf の使い方int sprintf(char *s, const char *format, ...);
書式に従って結果を文字列バッファへ書き込む。バッファの大きさを指定できないため、書き込み量が確保サイズを超えるとバッファオーバーフローを起こす危険がある古い関数。 出力される文字数を事前に見積もれない場合は特に危険で、C99以降は原則snprintfへの置き換えが推奨される。
#include <stdio.h>
int main(void) {
char buf[32];
sprintf(buf, "x=%d", 10);
puts(buf);
return 0;
}
⚠️ バッファサイズを超えて書き込むとメモリ破壊につながる。新規コードでは必ずsnprintfを使う。
アプリの関数リファレンスで引く(無料・登録不要) 関数一覧へ
sprintf と一緒に使う関数fclose
feof
ferror
fflush
fgetc
fgets
fopen
fprintf
fputc
fputs
fread
fscanf
fseek
ftell
fwrite
getchar
もっと先へ:ポインタ・メモリ・ファイル入出力・セキュアコーディングを含む全26トラックと、段位検定・模試のフルセットは完全版に収録しています。