Linux C中 获取当前终端的尺寸大小

在程序中想获得终端大小,需要用ioctl

ioctl(STDIN_FILENO,TIOCGWINSZ,&winsize)

winsize结构的描述参见<termios.h>

如果还想获得终端更多的属性,man一下tcgetattr()函数

#include<stdio.h>
#include<sys/types.h>
#include<sys/ioctl.h>
#include<unistd.h>
#include<termios.h>
int main()
{
    struct winsize size;
    ioctl(STDIN_FILENO,TIOCGWINSZ,&size);
    printf("%d\n",size.ws_col);
    printf("%d\n",size.ws_row);
    return 0;
}

版权声明:本文为wjhauannn原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。