Присвоение значений массиву: Subscripted value is neither array nor pointer nor vector - C (СИ)

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

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

Есть 2 массива:
int **tmp3;
  tmp3 =  ( int  **) malloc(sizeof(int*)*n);
    for  (i=0; i<n; i++)
    {
        tmp3[i]=(int*)malloc(sizeof(int)*m);
    }
 
   a =  ( int  **) malloc(sizeof(int*)*n);
    for  (i=0; i<n; i++)
    {
        a[i]=(int*)malloc(sizeof(int)*m);
    }
При попытке присвоить значение
tmp3[i][j]=a[i][j]
Выскакивает ошибка:subscripted value is neither array nor pointer nor vector. Как исправить?

Решение задачи: «Присвоение значений массиву: Subscripted value is neither array nor pointer nor vector»

textual
Листинг программы
    for (i = 0; i < n; i++)
    {
        tmp3[i][0] = a[i][0];
        printf ("\n:%d", tmp3[i][0]);
    }

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

В данном коде выполняется следующие действия:

  1. Создается цикл for, который будет выполняться от 0 до n (включительно).
  2. Внутри цикла, каждой итерации присваивается значение a[i][0] элементу массива tmp3[i][0].
  3. После каждой итерации, выводится на экран значение элемента массива tmp3[i][0] с помощью функции printf. Вот список действий в виде нумерованного списка:
  4. Создается переменная i типа int и инициализируется значением 0.
  5. Создается массив tmp3 типа int размером n на 1.
  6. Каждая итерация цикла присваивает значение a[i][0] элементу массива tmp3[i][0].
  7. Выполняется операция вывода на экран значения элемента массива tmp3[i][0] с помощью функции printf.
  8. Значение переменной i увеличивается на 1 после каждой итерации цикла.
  9. Цикл выполняется до тех пор, пока значение переменной i меньше n.
  10. По завершении цикла, переменная i принимает конечное значение.
  11. Значение переменной i может быть использовано в следующих циклах или операциях.
  12. Результатом выполнения кода будет вывод на экран значений элементов массива tmp3. Надеюсь, это объяснение помогло вам понять, что происходит в данном коде.

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


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

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

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