Uses ‘mem_alloc’ to allocate enough memory to store a Darray and initialises that memory as a darray which can store objects obj_size bytes long. The darray is initialised to contain zero elements (for ‘da_create’) or len elements (for ‘da_create_len’). Returns a reference to the allocated darray, or a null pointer if there was insufficient memory.