我知道在 C 中标准输入文件描述符为 0。我将文件描述符 0 附加到列表中并使用 select() 来检测是否有来自控制台的任何输入。
它可以成功检测到有输入。但问题是我如何检索值以及如何检索?(代码忽略错误检查)
fd_set master;
int console=0; //my stdin file descriptor
fdmax = console + 1;
FD_SET(console,&master);
select(fdmax+1, &read_fds, NULL, NULL, NULL);
for(i = 0; i <= fdmax; i++) {
if (FD_ISSET(i, &master)){
printf("input detected!\n");
dump_line(stdin); //clear the buffer
//do w.e here
}