Итак, мне нужно обработать некоторые данные структуры, которые мне пришлось сжимать странным способом для MPI_Send/Recv.Арифметика указателя на необработанные данные
Невозможно удобно применить его к указателю на известный тип, на котором я хочу работать, а затем проиндексировать (поскольку я сжал структуру в смежные данные, не могу предположить ничего о выравнивании), поэтому Я должен пройти через это с помощью арифметики указателя. Проблема в том, чтобы поддерживать совместимость с MPI, эти данные даются как void *, а арифметика указателя на void * является незаконной.
Мой вопрос в основном стилистичен: есть ли лучший способ сделать это, чем бросать в char *, а затем делать свою арифметику указателя? Каковы были бы соображения эффективности при принятии пустоты *, кастинг на char *, выполнение моих вещей, а затем возврат к void *? Я не могу представить, чтобы стрелки указателей были ужасно дорогими.
G'day и спасибо большое.
А, это было легко. Благодарю вас. –