C语言(Unix)IO 总结

本文介绍了Unix系统中IO的基本概念,包括文件的广泛定义及设备的管理方式。讲解了终端、控制终端的概念,并介绍了C程序启动时如何自动打开终端设备。此外还探讨了设备文件的查看方法以及常用的五个IO操作API。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. IO一般指File的输入和输出,File翻译为文件,多指磁盘文件,但在IO中有更广泛的含义

2. Unix中,倡导“Everything is a file”, 键盘,显示器,串口等设备在/dev目录下都存在对应的设备文件。这些都是file,存在相同的读写,打开,关闭,书用的函数接口相同。

3. 什么是设备,什么是终端,什么是控制终端?
所谓终端(Terminal)是指人机交互的设备,也就是可以接受用户输入并输出信息给用户的设备,设备(或称为终端)就是指键盘,鼠标,显示器,串口 等,指的是硬件。控制终端是形如:windows shell, Unix shell的进程,可以直接和设备以及操作系统交互的一个软件


4.启动一个C程序(main函数执行前), 会自动把终端设备打开三次, 分别付给三个文件指针:
FILE* stdin; //指向键盘
FILE* stdout; //指向显示器, 加">>"可以重定向到文件
FILE* stderr; //指向显示器, 加">>"可以重定向到文件

5. 在Unix中, ls -l /dev/tty 可以看到以C开头,表明为设备文件

6. API: 一般只用到5个函数:open, read, write, lseek, 以及close, 不同的缓冲器长度对read和write存在影响。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值