X-Git-Url: http://j8takagi.net/cgi-bin/gitweb.cgi?p=YACASL2.git;a=blobdiff_plain;f=include%2Fcmem.h;h=c67022642dea2e26f4a1eb862f24cc624276f28f;hp=50a29ec819503cb4651f0c4cf6ed5476bffda759;hb=4aaa5bc19f9fe9f0bb22d2854e91d0b9f78d8708;hpb=bf31ea99380e3ee2198f61f6510ebe6e4a3961f5 diff --git a/include/cmem.h b/include/cmem.h index 50a29ec..c670226 100644 --- a/include/cmem.h +++ b/include/cmem.h @@ -1,28 +1,36 @@ #ifndef YACASL2_CMEM_H_INCLUDED #define YACASL2_CMEM_H_INCLUDED - -#include #include -#include -#include -#include +/* + * 配列のサイズを返す + */ #ifndef ARRAYSIZE #define ARRAYSIZE(array) (sizeof(array)/sizeof(array[0])) #endif -/* mallocを実行し、0で初期化 */ -/* メモリを確保できない場合はエラーを出力して終了 */ +/** + * メモリを解放 + */ +#ifndef FREE +#define FREE(ptr) {free(ptr); ptr = NULL;} +#endif + +/** + * mallocを実行し、0で初期化 + * メモリを確保できない場合はエラーを出力して終了 + */ void *malloc_chk(size_t size, char *tag); -/* callocを実行 */ -/* メモリを確保できない場合はエラーを出力して終了 */ +/** + * callocを実行 + * メモリを確保できない場合はエラーを出力して終了 + */ void *calloc_chk(size_t nmemb, size_t size, char *tag); -/* malloc_chkを実行してメモリを確保してから、 */ -/* コピーした文字列を返す */ +/** + * malloc_chkを実行してメモリを確保し、コピーした文字列を返す + */ char *strdup_chk(const char *s, char *tag); -/* メモリがNULLの場合は解放 */ -void free_chk(void *ptr, char *tag); #endif