YACASL2
Macros | Functions
cmem.h File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <stdbool.h>
Include dependency graph for cmem.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ARRAYSIZE(array)   (sizeof(array)/sizeof(array[0]))
 配列のサイズを返すマクロ More...
 
#define FREE(ptr)   {free(ptr); ptr = NULL;}
 メモリを解放するマクロ More...
 

Functions

void * malloc_chk (size_t size, char *tag)
 mallocを実行し、0で初期化する More...
 
void * calloc_chk (size_t nmemb, size_t size, char *tag)
 領域の数とサイズを指定してメモリーを確保するcallocを実行する More...
 
char * strdup_chk (const char *s, char *tag)
 malloc_chkを実行してメモリを確保し、コピーした文字列を返す More...
 

Macro Definition Documentation

◆ ARRAYSIZE

#define ARRAYSIZE (   array)    (sizeof(array)/sizeof(array[0]))

配列のサイズを返すマクロ

Definition at line 14 of file cmem.h.

◆ FREE

#define FREE (   ptr)    {free(ptr); ptr = NULL;}

メモリを解放するマクロ

Definition at line 21 of file cmem.h.

Function Documentation

◆ calloc_chk()

void* calloc_chk ( size_t  nmemb,
size_t  size,
char *  tag 
)

領域の数とサイズを指定してメモリーを確保するcallocを実行する

メモリを確保できない場合はエラーを出力して終了

Returns
なし
Parameters
nmemb領域の数
size領域1個あたりのメモリーサイズ
tagエラーメッセージなどで表示されるタグ

Definition at line 14 of file cmem.c.

Here is the caller graph for this function:

◆ malloc_chk()

void* malloc_chk ( size_t  size,
char *  tag 
)

mallocを実行し、0で初期化する

メモリを確保できない場合はエラーを出力して終了

Returns
なし
Parameters
sizeメモリーのサイズ
tagエラーメッセージなどで表示されるタグ

Definition at line 3 of file cmem.c.

Here is the caller graph for this function:

◆ strdup_chk()

char* strdup_chk ( const char *  s,
char *  tag 
)

malloc_chkを実行してメモリを確保し、コピーした文字列を返す

Returns
コピーした文字列
Parameters
s文字列
tagエラーメッセージなどで表示されるタグ

Definition at line 25 of file cmem.c.

Here is the call graph for this function:
Here is the caller graph for this function: