C言語なら俺に聞け(入門編)Part 63
at TECH
425:400
10/04/25 00:42:10
>351 >420
あなたの言う1)と2)の違いを、把握できていなかったから、議論がぐるぐる回っていたぞ。
議論の焦点は
>入れたいメモリ領域を渡すのが(2)で、入れたいメモリ領域を渡さず関数内部でメモリ領域を確保するのが(1)です。これが定義です。
ということだね。
そうでであるならば
>(1)の場合は、可変部の情報を含めサイズ情報を渡しません。
これは無理。
1)の実現例としてstrdupを挙げているのなら、str系は終端文字列付きという制限を与えることで、
間接的にサイズ情報を与えている。
>404
>いいえ、関数の中でmallocを行うという点で、strdupと>>351の(1)は同じです。
私には同じには見えないな。
malloc-free, new-delete, new[]-delete, create_my_struct-delete_my_struct
は対に見える。
だけど関数内部でmallocするhogeがあるとしてhoge-freeは対には見えない。
そういうことに注意してコーディングしたくない。
だからstrdup使うくらいなら、mallocしてstrcpyして、freeする。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4989日前に更新/245 KB
担当:undef