有大佬能够通过stdin和stdout来获取终端的大小吗?

我曾见过一段代码,功能就是利用stdin和stdout通过一些读写的过程得到终端的大小。


但是具体原理不清楚,希望有高手讲讲!

 /* Report cursor location */
    if (write(ofd, "\x1b[6n", 4) != 4) return -1;

    /* Read the response: ESC [ rows ; cols R */
    while (i < sizeof(buf)-1) {
        if (read(ifd,buf+i,1) != 1) break;
        if (buf[i] == 'R') break;
        i++;
    }

具体不能贴上去。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐