【发布时间】:2020-05-25 03:41:21
【问题描述】:
我有一个名为“exampleWheel.txt”的 .txt 文件,其中包含 10 个字符:A、M、W、O、S、E、G、L、P、H。
我正在尝试将字符存储在一个数组中,以便以后可以根据每个字符在数组中的位置来引用它。
这是我的尝试:
#include <stdlib.h>
int main()
{
FILE * fPointer;
fPointer = fopen("exampleWheel.txt","r");
int i = 0;
char singleLine[150];
const char *array[10];
while(!feof(fPointer)){
fgets(singleLine, 150, fPointer);
array[i] = singleLine;
printf("%d\n",&array[i]);
printf("%s\n", array[i]);
i++;
}
fclose(fPointer);
printf("array[0] = %c\n", array[0]);
printf("array[1] = %c\n", array[1]);
return 0;
}
while循环中的printf语句返回正确的输出,但是while循环外的两个printf返回错误的结果。
即 printf("array[0] = %c\n", array[0]) 不返回数组的第一个字符
请告诉我如何改进我的代码。 提前谢谢你!
【问题讨论】:
标签: c arrays pointers while-loop char