我想讀取函數中的元素並將它們存儲在main中的數組中。我使用了一個指向動態數組的指針,但它不起作用。當我尊敬指針時,我得到的地址是NULL,程序崩潰。地址沒有傳遞給從main到function的指針。 C
這裏是數組:從主
char* first_name = malloc(first_name_length*sizeof(char));
函數調用:
get_first_name(fp, first_name_length, first_name);
函數聲明:
void get_first_name(FILE* fp, int length,char* first);
函數定義:
void get_first_name(FILE* fp, int length, char* first){
char c;
int i = 0;
int number_of_conversions;
number_of_conversions = fscanf(fp, "%c", &c);
while (!isspace(c)){
first[i] = c;
number_of_conversions = fscanf(fp, "%c", &c);
i++;
}
}
即使使用%c,fscanf也不會讀取空白字符。建議使用int c; c = fgetc(fp); – user3629249