// sortare - сортирование // baterie - аккумулятор void sortare() { int i, j, k, n, temp; // printf("Introduceti numarul total de elemente."); printf("Введите общее количество предметов."); for(i = n / 2; i > 0; i = i / 2) { for(j=i; j < n; j++) { for(k= j - i; k>=0; k = k - i) { if(lista[k+i].baterie >= lista[k].baterie) { break; } else { temp = lista[k].baterie; lista[k].baterie = lista[k+i].baterie; lista[k+i].baterie = temp; } } } } } Code // sortare - сортирование // baterie - аккумулятор void sortare() { int i, j, k, n, temp; // printf("Introduceti numarul total de elemente."); printf("Введите общее количество предметов."); for(i = n / 2; i > 0; i = i / 2) { for(j=i; j < n; j++) { for(k= j - i; k>=0; k = k - i) { if(lista[k+i].baterie >= lista[k].baterie) { break; } else { temp = lista[k].baterie; lista[k].baterie = lista[k+i].baterie; lista[k+i].baterie = temp; } } } } } Выскакивает данное ошибка : In function 'sortare': [Error] subscripted value is neither array nor pointer nor vector В чем проблема может быть ?
Братан, я чистую сишку не изучал,но,наскок понимаю,ты неправильно обращаешься к самому массиву Типо надо не “Lista[k].batarie” А вот так: «Lista.batarie[k]»
Тут вообще ничего не понятно, вы показали только одну функцию а например объект lista который вы используете вообще объявлен не тут. Как кому-то понять природу вашей ошибки если вы показали только простенький алгоритм обработки? Судя по тому что я тут вижу, ошибка вообще не тут.