並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 2 件 / 2件

新着順 人気順

.reallocの検索結果1 - 2 件 / 2件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

.reallocに関するエントリは2件あります。 人気エントリには 『reallocによる配列拡張の償却時間計算量 - 豪鬼メモ』などがあります。
  • reallocによる配列拡張の償却時間計算量 - 豪鬼メモ

    reallocを使ってメモリアロケーションのサイズを少しずつ伸ばしていく際に、償却時間計算量はO(N)になるだろうか、それともO(N^2)だろうか。結論としては、普通にやるとO(N^2)になる。ただし、セオリー通りにアプリケーション側で工夫するとO(N)にできる。性能テストをしてきちんと確認しておこう。 長さが事前にわからない文字列や配列を扱うには、動的に領域を確保する必要がある。標準C言語にはreallocという関数があり、それは既存の確保領域を拡張することが可能である。これを使うと、既に確保してある領域の直後にまだ確保されていない領域があってそこを合わせて確保できる場合、領域の再確保をせずに、利用可能なサイズだけを増やしてくれる。それが不可能な場合、別の領域を確保してから既存の領域のデータをコピーして、古い領域は削除してくれる。C++のnew/deleteにはこの機能はない。 同じ領域

      reallocによる配列拡張の償却時間計算量 - 豪鬼メモ
    • realloc(ptr, 0)は廃止予定 - yohhoyの日記

      C標準ライブラリrealloc関数に対して、サイズ0を指定すべきでない。 realloc(ptr, 0)によってptrが指すメモリブロックが解放(free(ptr)相当)される保証はない。この動作は ISO C および POSIX それぞれで明言されている。JPCERT MEM04-C サイズ0のメモリ割り当てを行わない も参照のこと。 C標準ライブラリ仕様に文面解釈の幅があったため処理系ごとに動作が異なる状況となっており、次期C2x(C23)標準ライブラリでは「reallocへのサイズ0指定」は廃止予定の機能(obsolescent feature)とされる。これ以外の挙動については現行C17と同じ。 C90/C99/C11仕様 C11 7.22.3.5/p2より引用。C90 7.10.3, C99 7.20.3.4/p2も同一文面。 If ptr is a null pointer,

        realloc(ptr, 0)は廃止予定 - yohhoyの日記
      1

      新着記事