Lar*_*itz 5 c c++ terminal formatting
可能重复:
在C中获取终端宽度?
在Linux和OS X上,我的shell报告$ COLUMNS具有终端窗口的宽度 - 调整窗口大小将调整此shell变量.
但是在我的C/C++程序中,getenv("COLUMNS")似乎没有找到变量.
有人有解释吗?或者让我的C++程序弄清楚它正在运行的终端的宽度的另一个建议(对于一些帮助消息自动换行)?
Lai*_*ura 10
也许是这样的:
#include <sys/ioctl.h>
#include <stdio.h>
int main()
{
    struct winsize w;
    ioctl(0, TIOCGWINSZ, &w);
    printf("lines %d\n", w.ws_row);
    printf("columns %d\n", w.ws_col);
    return 0;
}
直接取得:在C中获得终端宽度?