- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C++の文字列バッファの幅は4の倍数になる?)
C++の文字列バッファの幅は4の倍数になる?
このQ&Aのポイント
- C++の文字列バッファは常に4の倍数の幅で取得され、余りの部分には0が確保されます。
- この仕様は正式なC++の仕様であり、メモリの内容もそれに従って確保されます。
- 具体的な条件や再現方法については、資料やサイトなどに明記されていないようです。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (4)
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.5
- 麻野 なぎ(@AsanoNagi)
- ベストアンサー率45% (763/1670)
回答No.3
- kmee
- ベストアンサー率55% (1857/3366)
回答No.2
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.1
お礼
#1~5の皆様ご回答いただきありがとうございます。 まとめると、仕様としては決まっていないが、4の倍数の位置から変数の領域が確保され残りの部分は0で埋められる、という条件のコンパイラが多いためこのような動作になる、という感じでしょうか。 >Linux上のGccでテストしたところ、 >sa -> a0ゴミゴミ・・・ >でした。 について、確認頂きありがとうございます。 私のほうでもgcc+Windowsで試してみましたが、windowsではやはり0が埋まっているようでしたが、環境によって反例があるというということは了解しました。