详解C语言中的ttyname()函数和isatty()函数的用法
C语言ttyname()函数:返回一终端机名称
头文件:
#include<unistd.h>
定义函数:
char*ttyname(intdesc);
函数说明:如果参数desc所代表的文件描述词为一终端机,则会将此终端机名称由一字符串指针返回,否则返回NULL.
返回值:如果成功则返回指向终端机名称的字符串指针,有错误情况发生时则返回NULL.
范例
#include<unistd.h> #include<sys/types.h> #include<sys/stat.h> #include<fcntl.h> main() { intfd; char*file="/dev/tty"; fd=open(fiel,O_RDONLY); printf("%s",file); if(isatty(fd)) { printf("isatty.\n"); printf("ttyname=%s\n",ttyname(fd)); } else printf("isnotatty\n"); close(fd); }
执行:
/dev/ttyisattyttyname=/dev/tty
C语言isatty()函数:判断文件描述词是否是为终端机
头文件:
#include<unistd.h>
定义函数:
intisatty(intdesc);
函数说明:如果参数desc所代表的文件描述词为一终端机则返回1,否则返回0.
返回值:如果文件为终端机则返回1,否则返回0.