我有一个.txt文件,我用来学习一些基本c。
这是txt文件:
8
12 48 15 65 16 82 9 72
这是代码:
int main(int argc, char** argv){
int num;
int arr[100000];
int index = 0;
int size = 0;
if (argc != 2){
return 0;
}
FILE *inputFile = fopen(argv[1], "r");
if (inputFile == NULL){
printf("Error1n");
return 0;
}
/* while(!feof(inputFile)){
num = fgetc(inputFile);
if(isdigit(num)){
num = num - '0';=
printf("%cn",num);
}
}*/
while(fscanf(inputFile, " %d", &num) == 1){
arr[index] = num;
index++;
}
size = arr[0];
int * list = (int*)malloc(sizeof(int)*size);
int i;
for(i = 1; i <= size; i++){
list[i-1]=arr[i];
printf("%dn", list[i]);
}
if(!feof(inputFile)){
printf("error");
return 0;
}
}
我正在寻找数组,但是我的输出不断为0、0、0、0、0,..... .....怎么了?我认为也许我的印刷声明是错误的,但是我是C ..有什么技巧吗?
您有9个项目,而不是8个项目
size = arr[0];
//printf("size %d %dn", size,index);
int * list = (int*)malloc(sizeof(int)*(index));
int i;
for(i = 1; i <= index; i++){
list[i-1]=arr[i-1];
printf("%dn", list[i-1]);
}