エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
『strlen の最適化 ~ GCC編 ~』
地味なネタですが、strlen の最適化についてのお話です。 文字列リテラルの文字列長をもとめる場合、通... 地味なネタですが、strlen の最適化についてのお話です。 文字列リテラルの文字列長をもとめる場合、通常、strlen 関数を使うわけですが文字列リテラルの長さはコンパイル時に決まっているわけですから実行時に strlen 関数を呼び出すのはなんだか無駄な処理のように思えてしまいます。 #define SOME_STRING_LITERAL "Hello, world!" size_t len = strlen(SOME_STRING_LITERAL); したがって、次のようなコードを書きたくなるわけですが自分で文字数を計算して数値リテラルを埋め込むのは愚かです。 size_t len = 13; ← "Hello, world!"の文字数 できればコンパイラが上のようなコードを生成してくれるとうれしいのですが、これはコンパイラの最適化機能になるので、当然コンパイラによっていろいろありま