Why setupterm terminates the program?
这是"Beginning Linux Programming"一书中的示例程序:
1 2 3 4 5 6 7 8 9 10 11 12 |
运行它,我有这个结果:
1 2 | ./badterm 'unlisted': unknown terminal type. |
根据setupterm函数定义,它必须返回0:"terminfo数据库中没有匹配的条目"。 而不是这个,程序终止。 为什么?
看起来你要求它这样做。 从我机器上的
1
2
3
4
5
6 If errret is null, setupterm prints an error message upon finding an
error and exits. Thus, the simplest call is:
setupterm((char *)0, 1, (int *)0);
which uses all the defaults and sends the output to stdout.
据推测,如果您想自己处理任何错误返回,则必须为