C言語なら俺に聞け(入門編)Part 63at TECH
C言語なら俺に聞け(入門編)Part 63 - 暇つぶし2ch425: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