Segmentation fault - C (СИ) (250646)

Узнай цену своей работы

Формулировка задачи:

а) qsort(v, left, last-1, comp);
б) qsort(v, left, last--, comp);
Ребята чем отличается функция а от б, деле в том что функция б вернула мне ошибку segmentation fault! функция является реверсия
void qsorts (void *v[], int left, int right, int (*comp) (void *, void *)) {
    int i, last;
 
    if (left >= right)
        return;
    swap (v, left, (left + right) / 2);
    last = left;
    for (i = left+1; i <= right; i++)
        if ((*comp)(v[i], v[left]) < 0)
            swap (v, ++last, i);
    swap (v, left, last);
    qsorts (v, left, last-1, comp);
    qsorts (v, last+1, right, comp);
 
}

Решение задачи: «Segmentation fault»

textual
Листинг программы
#include <stdio.h>
 
int main () {
    int i = 0;
    i++;
    printf("%d\t", i);
    i + 1;
    printf("%d\n", i);
}

Объяснение кода листинга программы

  1. Включаем заголовочный файл для использования функций ввода-вывода.
  2. Объявляем переменную i типа int и инициализируем ее значением 0.
  3. Увеличиваем значение переменной i на 1.
  4. Выводим значение переменной i на экран с помощью функции printf, в которой указываем формат вывода %d\t для целого числа и символ табуляции \t для отступа.
  5. Увеличиваем значение переменной i на 1.
  6. Выводим значение переменной i на экран с помощью функции printf, в которой указываем формат вывода %d\n для целого числа и символ новой строки \n для перехода на новую строку.
  7. Возвращаем 0, чтобы указать, что программа успешно завершилась.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.333 из 5