-5
я пытаюсь сделать что-то вроде QSort, но я всегда получаю ошибку, когда я пытаюсь использовать с void*
недействительным указатель арифметика в QSort
void my_sort(void* base, size_t num, size_t size, int(*compare)(const void*, const void*))
{
size_t i, j;
const void *first, *second;
for (size_t i = 0; i < num*size; i+=size)
{
for (size_t j = size +i; j < num*size; j +=size)
{
first = base + i;
second = base + j;
if (compare(first,second)<0)
{
swap(base,i,j);
}
}
}
}
C или C++? Вы не должны писать ничего подобного на C++. –
Вы получаете сообщение об ошибке, когда используете указатель void где? Какая ошибка? на каком языке вы используете? Пожалуйста, добавьте более подробную информацию в следующий раз. – Cubia