私はこのmalloc関数を研究していて、いくつかのヘルプを使用できます。
static void *malloc(int size)
  {
        void *p;
        if (size < 0)
                 error("Malloc error");
        if (!malloc_ptr)
                 malloc_ptr = free_mem_ptr;
        malloc_ptr = (malloc_ptr + 3) & ~3;     /* Align */
        p = (void *)malloc_ptr;
        malloc_ptr += size;
        if (free_mem_end_ptr && malloc_ptr >= free_mem_end_ptr)
                 error("Out of memory");
        malloc_count++;
        return p;
 }
十分なメモリがある場合、malloc funcは任意のタイプにメモリスペースを割り当てることを知っていますが、私が理解していない行は次のとおりです。
p = (void *)malloc_ptr;
malloc_ptr += size;
そのようなデータ型をどのように指すことができますか?そのvoidポインタまたはその場所を理解できません。
注:malloc_ptrはunsignedlongです