Ошибка с указателями - C (СИ)

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

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

Необходимо отсортировать одномерный массив. Написал функцию, но компилятор выдаёт ошибку в строке 55: error: invalid type argument of unary '*' (have 'int')
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
void sortuj(int tab[], int N);
void swap(int*, int*);
 
int main(void)
{
    srand(time(NULL));
    int N1, N2;
    printf("Podaj rozmiar tablicy t1: ");
    scanf("%d", &N1);
    printf("\nPodaj rozmiar tablicy t2: ");
    scanf("%d", &N2);
 
    int t1[N1];
    int t2[N2];
 
    for(int i = 0; i < N1; i++)
    {
        t1[i] = 1 + rand() % 10;
        printf("%d ", t1[i]);
    }
    printf("\n");
    for(int i = 0; i < N2; i++)
    {
        t2[i] = 1 + rand() % 10;
        printf("%d ", t2[i]);
    }
    printf("\n");
 
    sortuj(t1, N1);
    sortuj(t2, N2);
    printf("\n");
 
    return 0;
}
 
void sortuj(int tab[], int N)
{
    for(int i = 1; i < N; i++)
    {
        for(int j = i; j > 0 && tab[j - 1] > tab[j]; j--)
        {
            swap(&tab[j - 1], &tab[j]);
        }
    }
}
 
void swap(int *x, int *y)
{
    int temp = *x;
    *x = *y;
    *y = *temp;
}
Что я сделал не так?

Решение задачи: «Ошибка с указателями»

textual
Листинг программы
*y = temp;

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


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

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

14   голосов , оценка 4.143 из 5
Похожие ответы