详解C语言中的ttyname()函数和isatty()函数的用法_C 语言

C语言ttyname()函数:返回一终端机名称
头文件:

#include <unistd.h>

定义函数:

char * ttyname(int desc);

函数说明:如果参数desc 所代表的文件描述词为一终端机, 则会将此终端机名称由一字符串指针返回, 否则返回NULL.

返回值:如果成功则返回指向终端机名称的字符串指针, 有错误情况发生时则返回NULL.

范例

#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
main()
{
  int fd;
  char * file = "/dev/tty";
  fd = open (fiel, O_RDONLY);
  printf("%s", file);
  if(isatty(fd))
  {
   printf("is a tty. \n");
   printf("ttyname = %s \n", ttyname(fd));
  }
  else
   printf(" is not a tty\n");
  close(fd);
}

执行:

/dev/tty is a tty ttyname = /dev/tty

C语言isatty()函数:判断文件描述词是否是为终端机
头文件:

#include <unistd.h>

定义函数:

int isatty(int desc);

函数说明:如果参数 desc 所代表的文件描述词为一终端机则返回1, 否则返回0.

返回值:如果文件为终端机则返回1, 否则返回0.

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索c语言
, isatty
ttyname
c语言指针用法详解、ttyname failed、ttyname、mesg ttyname failed、ttyname errno 25,以便于您获取更多的相关知识。

时间: 2024-08-01 11:35:47

详解C语言中的ttyname()函数和isatty()函数的用法_C 语言的相关文章

详解C语言中scanf函数使用的一些注意点_C 语言

 (一)基本介绍 Scanf是系统自带的函数,声明包含在stdio.h文件中,因此要是有该函数,必须加载#include<stdio.h>头文件.当执行到scanf函数时,程序就暂停等待用户输入,该函数只接受变量的地址,格式为&变量名.是一个阻塞式的函数,2用户输入完毕后,则将值赋值给变量,至此函数调用完毕.敲回车键告知计算机键入完毕. (二)使用注意 ①. 使用scanf函数输入一个字符变量.Char a; scanf("%c",&a); ②. 同时输入多

详解C语言中rand函数的使用_C 语言

前言 我们在编程实现算法的过程中,往往需要使用到随机数.由于计算机是一台以逻辑为基础的机器,没法做到真正的随机(大概量子计算机可以?).所以计算机生成的是伪随机数,供我们使用. 我们使用C语言的rand函数,生成的也是伪随机数. c语言之rand函数的使用 1.写入头文件 #include <stdlib.h> #include <stdio.h> #include <time.h> 2.变量的定义 void main( void ) { int i,k; 3.sran

详解C语言中fseek函数和ftell函数的使用方法_C 语言

fseek函数: int fseek(FILE * _File, long _Offset, int _Origin); 函数设置文件指针stream的位置.如果执行成功,stream将指向以fromwhere为基准,偏移offset(指针偏移量)个字节的位置,函数返回0.如果执行失败则不改变stream指向的位置,函数返回一个非0值. 超出文件末尾位置,还是返回0.往回偏移超出首位置,还是返回0,小心使用. 第一个参数stream为文件指针. 第二个参数offset为偏移量,正数表示正向偏移,

详解C语言中symlink()函数和readlink()函数的使用_C 语言

C语言symlink()函数:建立文件符号连接头文件: #include <unistd.h> 定义函数: int symlink(const char * oldpath, const char * newpath); 函数说明:symlink()以参数newpath 指定的名称来建立一个新的连接(符号连接)到参数oldpath 所指定的已存在文件. 参数oldpath 指定的文件不一定要存在, 如果参数newpath 指定的名称为一已存在的文件则不会建立连接. 返回值:成功则返回0, 失败

详解C语言中freopen()函数和fclose()函数的用法_C 语言

C语言freopen()函数:打开文件函数,并获得文件句柄 头文件: #include <stdio.h> 定义函数: FILE * freopen(const char * path, const char * mode, FILE * stream); 函数说明: 参数 path 字符串包含欲打开的文件路径及文件名. 参数mode 请参考fopen()说明.. 参数stream 为已打开的文件指针. Freopen()会将原stream 所打开的文件流关闭, 然后打开参数path 的文件.

详解C语言中free()函数与getpagesize()函数的使用_C 语言

C语言free()函数:释放动态分配的内存空间头文件: #include <stdlib.h> free() 函数用来释放动态分配的内存空间,其原型为: void free (void* ptr); free() 可以释放由 malloc().calloc().realloc() 分配的内存空间,以便其他程序再次使用. [参数说明]ptr 为将要释放的内存空间的地址. free() 只能释放动态分配的内存空间,并不能释放任意的内存.下面的写法是错误的: int a[10]; // ... fr

详解C语言中的getgrgid()函数和getgrnam()函数_C 语言

C语言getgrgid()函数:从组文件中取得指定gid的数据 头文件: #include <grp.h> #include <sys/types.h> 定义函数: strcut group * getgrgid(gid_t gid); 函数说明:getgrgid()用来依参数gid 指定的组识别码逐一搜索组文件, 找到时便将该组的数据以group 结构返回. 返回值:返回 group 结构数据, 如果返回NULL 则表示已无数据, 或有错误发生. 范例 /* 取得gid=3 的组

详解C语言中getgid()函数和getegid()函数的区别_C 语言

C语言getgid()函数:取得组识别码函数 头文件: #include <unistd.h> #include <sys/types.h> 定义函数: gid_t getgid(void); 函数说明:getgid()用来取得执行目前进程的组识别码. 返回值:返回组识别码 范例 #include <unistd.h> #include <sys/types.h> main() { printf("gid is %d\n", getgid

详解C语言中strcpy()函数与strncpy()函数的使用_C 语言

C语言strcpy()函数:复制字符串 头文件:#include <string.h> 定义函数: char *strcpy(char *dest, const char *src); 函数说明:strcpy()会将参数src 字符串拷贝至参数dest 所指的地址. 返回值:返回参数dest 的字符串起始地址. 附加说明:如果参数 dest 所指的内存空间不够大,可能会造成缓冲溢出(buffer Overflow)的错误情况,在编写程序时请特别留意,或者用strncpy()来取代. 范例 #i