コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
GizmoLab 関連
オンラインショップ
CAD&CGブログ
YouTube
GitHub
CAD 系
GizmoTools
AutoLISP
Visual LISP
BricsCADのLISP
GzLib
DCL
OpenDCL
DWG
DXF
CADのコマンド一覧
システム変数
図形の種類
Ver別サポートAPI
CAD用語集
メモ
newLISP
CommonLISP
Script-Fu
Inno setup
JavaScript
ANDROID
Windowsでのファイルハッシュ確認
Prolog
Python
Clojure
Electron
フォント
数学メモ
イメージサイズとメモリ量
blender
Processwire
Win10,11メモ
IIJmio
mediawiki資料
ヘルプ
検索
検索
表示
ログイン
個人用ツール
ログイン
Sds reallocのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Sds realloc
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
; 構文 : void *sds_realloc (void *memloc, size_t bytes); ; 機能 : メモリのアロケーションのサイズを変更する。 : メモリサイズが増える場合は、メモリ領域の内容は保存される。メモリサイズが減少する場合は、内容が部分的に失われる事もある。 : いろいろなサイズで確保・開放を繰り返すとメモリ割り当てに無駄が生じてしまうので、sds_realloc を使う頻度をできるだけ減らすようなコーディングが望ましいらしい。 ; 引数 :* *memloc : メモリ領域 :* bytes : バイトサイズ ; 戻り値 : 成功ならメモリ領域のポインター、失敗ならNULLを返す。 ; サンプル <pre class="brush: cpp;"> int *p1, *p2; p1 = (int*)sds_calloc(5, sizeof(int)); /* int型の要素を5個割り当て */ /* 何かの処理 */ p2 = (int*)sds_realloc(p1, sizeof(int)); /* int型の1つの領域を再割り当て */ if( p2 == NULL ) /* 成功したかどうか調べる */ { free( p1 ); /* 失敗した場合、元の領域が有効なままなので解放する */ return 0; } p1 = NULL; /* 安全策。p1 は sds_realloc() の内部で解放されているが、 使えないことを明確にするために NULL を代入しておく */ /* 何かの処理 */ free( p2 ); </pre> [[Category:SDS]]
Sds realloc
に戻る。
検索
検索
Sds reallocのソースを表示
話題を追加