#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <vector>
#include <algorithm>
#include <cmath>
#include <climits>
#include <set>
#include <utility>
#include <string>
#include <list>
#include <errno.h>
#include <sys/stat.h>
#include <dirent.h>
#include <map>
#include <cstring>
#include <sys/wait.h>
#include <utility>
#include <signal.h>
#include <sys/types.h>
#include <sys/time.h>
using namespace std;
fd_set fdread;
int main() {
FD_ZERO(&fdread);
int fd[2];
pipe(fd);
pipe(fd);
pipe(fd);
pipe(fd);
pipe(fd);
pipe(fd);
pipe(fd);
FD_SET(fd[0], &fdread);
write(fd[1], "sdssds", 6);
printf("%d\n", fd[1]);
int x = select(50, &fdread, NULL, NULL, NULL);
printf("%d", x);
return 0;
}
Как вы заметили из кода выше в множестве дескрипторов нету 1.Почему select всегда возвращает дескриптор на стандартный вывод т.е 1?