#include <stdio.h>
#define MAXLINE 1024
int main() {
char s[MAXLINE];
FILE *fpin, *fpout;
fpin = popen("ls", "r");
fpout = popen("sort -r", "w");
while(fgets(s, MAXLINE, fpin) != NULL){
fputs(s, fpout);
}
pclose(fpin);
pclose(fpout);
return 0;
}

これの意味がわかりません
また、fgetsでfpinからs[]にいれてるんですよね?
この時 MAXLINEは何の最大桁数なのでしょうか?
10にしたりしてためしたのですが 10行以上出力されるし
1行に10桁以上表示されます
fputsは fpinの値をfpoutに渡していると言うことですよね?
ようするに ls | sort -r 見たいにしてるって事ですよね?
すいませんが、 上のwhileの当たりを解説していただけないでしょうか?
すいませんがおねがいします