Удивительно, по крайней мере, для меня. Следующий код вызывает segmentation fault: core dump
на моем ubuntu 15.04, но успешно работает на моей дебианской платформе.Ошибка сегментации на ubuntu, Запуск на debian
Также следует отметить, что у меня array
есть желаемые индексы, поэтому я получаю для этого хранилище, а индексы имеют целочисленное значение.
int array_dequeue(int **array, int *n)
{
int c;
for (c = 0; c < *n - 2 ; c++)
*array[c] = *array[c + 1];
*n--;
return 0;
}
//Calling that in main
int main(int argc, char* argv[])
{
int length = atoi(argv[1]); // ./mpi.o 4 so length is 4
int *VP;
VP = (int*)malloc(length*sizeof(int));
for(i=0; i<vertices; i++)
{
VP[i] = i + 1;
}
array_dequeue(&VP, &length);
}
Любая помощь будет оценена по достоинству. Заранее спасибо
Пожалуйста, включите определение и часть инициализации. Это может быть источником segfault. – SirPython
Вы запустили программу в отладчике? У вас есть 'ulimit -c', чтобы разрешить создание coredump? Вы 'catchsegv' программы для получения stacktrace? Вы запустили его под 'valgrind'? Вы перекомпилировали «дезинфицирующее средство для адреса»? Нет? Почему нет? – EOF
@SirPython Я редактирую свой вопрос, спасибо за примечание –