たとえば、このテーブルをメモ帳に保存しました。
x's 1 2 3 4 5
y's 2 4 5 6 7
使用fscanf
およびファイル処理。たとえば、array1 と array2 を宣言した場合、x と y の値を格納するにはどうすればよいですか。(x を array1 に、y を array2 に格納)
たとえば、このテーブルをメモ帳に保存しました。
x's 1 2 3 4 5
y's 2 4 5 6 7
使用fscanf
およびファイル処理。たとえば、array1 と array2 を宣言した場合、x と y の値を格納するにはどうすればよいですか。(x を array1 に、y を array2 に格納)
これはうまくいくかもしれません.txtファイルに余分なスペース文字を入れないでください
#include <stdio.h>
#include <stdlib.h>
void main ()
{
int *x;
int *y;
int d,sizey;
char ch;
int sizex = 1;
int size = 0;
int i = 0;
FILE * pFile;
pFile = fopen ("text.txt","r");
while (fscanf (pFile, "%d", &d) != EOF)
{
size++;
}
rewind (pFile);
fscanf (pFile, "%c", &ch);
while (ch != '\n')
{
if (ch == ' ')
sizex++;
fscanf (pFile, "%c", &ch);
}
sizey = size - sizex;
rewind (pFile);
x = (int*) malloc(sizex*sizeof(int));
y = (int*) malloc(sizey*sizeof(int));
for(i = 0;i<sizex;i++)
{
fscanf (pFile, "%d", &d);
x[i]=d;
}
for(i = 0;i<sizey;i++)
{
fscanf (pFile, "%d", &d);
y[i]=d;
}
}