エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
10 million bugs in my code @nanoris : C/C++, sprintf, _sntprintf
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
10 million bugs in my code @nanoris : C/C++, sprintf, _sntprintf
2013年12月02日19:41 C/C++, sprintf, _sntprintf カテゴリC/C++, 障害事例 1 sprintf はバッファオーバ... 2013年12月02日19:41 C/C++, sprintf, _sntprintf カテゴリC/C++, 障害事例 1 sprintf はバッファオーバランの危険性がある。そこで snpritf を使ってバッファサイズ (正しくは文字数) を渡すのだが、この値に誤りがあればバッファオーバランに変わりはない。またバッファオーバランをしなくても \0 が書き込まれなければ致命的である。//Windowsの場合。 TCHAR buf[12]; int len0 = (sizeof(buf)-sizeof(TCHAR))/2; int len1 = _countof(buf)-1; int len2 = sizeof(buf)/2; int len3 = _countof(buf); int len4 = (sizeof(buf)-sizeof(TCHAR)); int len5 = size