Массив указателей в C - проблема с выделением памяти - PullRequest
0 голосов
/ 26 апреля 2020

У меня есть программа, в которой я помещаю строку из файла в массив указателей. Мой учитель сказал, что это неправильно, и я не знаю, почему?

#include <stdio.h>
#include <stdlib.h>


int readArray(FILE *wp, char *name)
{
    int i = 0, j;
    fscanf(wp, "%s", &name[0]);
    printf("Print name: %s", name);

    return 0;
}

int main (int argc, char *argv[])
{
    FILE *wz;                         
    char *name[1];



    if (argc != 2) {                                
    printf("Wrong arguments number\n");
    printf("I should run this way:\n");
    printf("%s source\n",argv[0]);
    exit(1);
    }

    if( (wz= fopen(argv[1],"r")) == NULL) {
        printf("Open error %s\n", argv[1]);
        exit(1);
    }

    readArray(wz, *name);

    int fclose(FILE *wz);

    return 0;
}

Мой текстовый файл

arr1

Я запускаю код ./file1.x arr.txt

Может быть, я неправильно распределяю память?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...