fscanfを使った場合
#include <stdio.h>
#include <stdlib.h>
#define MAX 1024
typedef struct meminfo {
char name[40];
char ave[20];
char inch[10];
} s_meminfo;
int main(void)
{
struct meminfo mem[MAX];
int i;
int k;
FILE *rfp;
if ( (rfp = fopen("/proc/meminfo","r")) == NULL ){
fprintf(stderr,"Open ERROR");
}
i = 0;
while ( fscanf(rfp,"%s %s %s",mem[i].name,mem[i].ave,mem[i].inch ) != EOF) {
i++;
}
for (k = 0; k < i; k++ ) {
printf("%s %s %s\n",mem[k].name,mem[k].ave,mem[k].inch);
}
}