0

構造体へのポインタの配列にメモリを割り当てています

FreqRecord* record = malloc(MAXRECORDS * sizeof (FreqRecord));

すでにこのレコードを構築しているパイプを介して別のプロセスから読み取る

    int length = 0;
    if ((length = read(fdr[0][0], record, MAXRECORDS * sizeof (FreqRecord)))<0){
       perror("reading from pipe\n");
       exit(1);
    }

これらのコードはループしており、毎回異なる結果が期待されます。ただし、常に前のパイプが以前に書いたものとまったく同じになります

これが構造体が定義者である方法です

typedef struct {
    int freq;
    char filename[PATHLENGTH];
} FreqRecord;
4

0 に答える 0