1#ifndef YACASL2_CMEM_H_INCLUDED
2#define YACASL2_CMEM_H_INCLUDED
14#define ARRAYSIZE(array) (sizeof(array)/sizeof(array[0]))
21#define FREE(ptr) {free(ptr); ptr = NULL;}
43void *
calloc_chk(
size_t nmemb,
size_t size,
const char *tag);
53char *
strdup_chk(
const char *s,
const char *tag);
64char *
strndup_chk(
const char *s,
size_t len,
const char *tag);
87char *
strrev(
const char *s);
void strip_end(char *s)
文字列の末尾から、改行と空白とタブを削除する
char * strndup_chk(const char *s, size_t len, const char *tag)
malloc_chkを実行してメモリを確保し、コピーした文字列の指定した長さの部分を返す
void * calloc_chk(size_t nmemb, size_t size, const char *tag)
領域の数とサイズを指定してメモリーを確保するcallocを実行する
void strip_casl2_comment(char *s)
文字列から「'」以降の文字列をCASL IIのコメントとして削除する。「''」の場合は除く
char * strrev(const char *s)
逆にした文字列を返す
void * malloc_chk(size_t size, const char *tag)
mallocを実行し、0で初期化する
char * strdup_chk(const char *s, const char *tag)
malloc_chkを実行してメモリを確保し、コピーした文字列を返す