入力テキストファイルから行を読み取り、読み取りが完了したら、配列array1
に行を格納
しています。配列内の要素を出力したい..動的メモリ割り当てを実行したい..しかし、それは私がこれを取得した後一部の作業..これまでの私のコード:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_LEN 256
int main(){
FILE* fp;
fp=fopen("input.txt","r");
char currentline[MAX_LEN];
int i=0;
char *array1;
array1 = malloc(10*MAX_LEN);
while(fgets(currentline,MAX_LEN,fp)!=NULL && i<10){
strcpy((char *)&array1[i],currentline);
printf("%s\n",currentline);
printf("array1= %s\n",(&array1[i]));
i++;
}
for (;i>=0;i--){
printf("%s\n",(&array1[i]));
}
}
input1.txt
101
84
65
13
hello
90
24
94
73
70
68
94
65
出力:
101
array1= 101
84
array1= 84
65
array1= 65
13
array1= 13
hello
array1= hello
90
array1= 90
24
array1= 24
94
array1= 94
73
array1= 73
70
array1= 70
0
70
770
9770
29770
929770
h929770
1h929770
61h929770
861h929770
1861h929770
私がやりたいのは、各要素を印刷することです..しかし、各行の最初の文字を印刷することです..何が原因ですか?