我正在尝试计算如何在ncurses中更改TABSIZE,并找到了set_tabsize函数。我尝试过它只会产生错误的效果。简单的程序来测试它:
#include <stdlib.h>
#include <ncurses.h>
int main(int argc, char** argv)
{
initscr(); set_tabsize(4); noecho();
printw("a\tb\na b");
refresh();
getch();
endwin();
return EXIT_SUCCESS;
}
我希望我的标签为4个空格,但输出为:
a b
a b
感谢您的关注。
答案 0 :(得分:2)
您对标签感到困惑 - 它们不会扩展到固定数量的空间 - 它们会插入足够的空格带您进入下一个标签列。因此,在第一行中,您的标签会有3个空格。
答案 1 :(得分:2)
标签通常不是四个空格,它们通常会转到制表位,每个制表位四个空格。因此,以下代码将产生相同的间距:
printf("a\tb\n"); a b
printf("aa\tb\n"); aa b
printf("aaa\tb\n"); aaa b