* MemArea
 -(by [[K]], 2019.03.06)
 ** (0)
 -名称を「ポインタ&サイズ」の略でpsにすると、たまに使うポインタスロットにかぶってしまうので、略称がmaになるMemAreaにしてみた。
 ** (1)
  typedef struct Kma_ {
      char *p;
      int s, i, m, u;
  } Kma;
  
  void kma_0(Kma *ma, int m)
  {
      ma->p = malloc(m);
      if (ma->p == 0)
          kerr("kma_0: out of memory");
      ma->s = m;
      ma->i = 0;
      ma->m = m;
      ma->u = 64 * 1024;
  }
 
  
  void kma_t(Kma *ma)
  {
      if (ma->i + ma->m >= ma->s) {
          ma->p = realloc(ma->p, ma->s + ma->u);
          if (ma->p == 0)
              kerr("kma_t: out of memory");
          ma->s += ma->u;
      }
  }
 

リロード   新規 編集 差分 添付   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS