Como gerenciar alinhamentos de memória e aritmética genérica de ponteiros de maneira portátil em

Preciso implementar uma versão otimizada do malloc / realloc / free (adaptada para o meu aplicativo em particular). No momento, o código é executado em uma plataforma específica, mas eu gostaria de escrevê-lo de maneira portátil, se possível (a plataforma pode mudar no futuro) ou, pelo menos, gostaria de concentrar as possíveis diferenças de plataforma em um único ponto (provavelmente a .h). Estou ciente de alguns dos problemas:

iferenças no alinhamento da memóriferenças no menor tamanho de bloco de memória adequado para alocação "genérica&quo diferenças no tamanho do ponteiro

(Vou ignorar as diferenças nos serviços básicos do sistema para alocação de memória aqui, pois em alguns sistemas embarcados eles podem não estar disponíveis. Vamos imaginar que trabalhemos em um grande bloco de memória pré-alocado para ser usado como "heap").

As questões)

xistem macros ou funções padrão em C para esse tipo de objetiv Que outros problemas posso enfrentar neste trabalho?

questionAnswers(12)

yourAnswerToTheQuestion