Linux - 输入输出流程序 代码(C)

输入输出流程序 代码(C)

本文地址:http://blog.csdn.net/caroline_wendy

使用输入输出流,控制文件流。

STDIN_FILENO,STDOUT_FILENO代表标准输入和标准输出的文件描述符。

执行文件使用"./", 结束文件"Ctrl+D"

代码:

/*By C.L.Wang
 * Eclipse CDT
 * Ubuntu 12.04
 * 2014.10.5*/

#include "apue.h"
#include "error.h"

#define BUFFSIZE 4096

int main (void) {
	int n;
	char buf[BUFFSIZE];
	while((n = read(STDIN_FILENO, buf, BUFFSIZE)) > 0) {
		if (write(STDOUT_FILENO, buf, n) != n) {
			err_sys("write error");
		}
	}
	if (n<0)
		err_sys("read error");
	return 0;
}

输出:

I am a girl!

控制台:

时间: 2024-10-08 16:54:00

Linux - 输入输出流程序 代码(C)的相关文章

JAVA输入/输出流程序例题(文件和目录、字节流、字符流)

一.文件和目录 1.显示文件的基本信息. 2.显示目录的基本信息. 3.在指定目录下创建单个文件. 4.指定目录下创建多个临时文件. 二.字节流 1.生成ZIP压缩文件 2.解压缩zip文件 3.生成Excel文件 4.读取excel文件 5.生成PDF文件 6.读取PDF文件中的内容 7.利用poi读取Word文件中的内容. 三.字符流 1.追加文件内容 2.读取jar包内容 3文件的加密/解密操作 JAVA加包+++右键项目+BuildPath+Add External Achievees.

linux 输入输出流和文件描述符浅析

File descriptors 是一个整数 表内存管理的对象,该对象可以由进程进行读写. 一个进程可以获取File descriptors通过打开文件 目录 或者设备,通过创建管道 或者复制一个已经存在的descriptors, 文件描述符将文件 管道 设备都抽象化为一样的东西,都像字节流.文件描述符作为索引映射到 进程表中.每一个进程都有文件描述符的私有化控件,从0开始.进程读取文件 文件描述符为0 写入文件描述符为1 写错误信息到文件标识符为2. while((fd = open("con

输入输出流(I/O)

一.流概述 流是一组有序的数据序列,根据操作的类型,可分为输入流和输出流两种.I/O流提供了―条通道程序,可以使用这条通道把源中的字节序列送到目的地,虽然I/O流经常与磁盘文件存取有关,但是程序的源和目的地也可以是键盘鼠标.内存或显示器窗口等. Java由数据流处理输入输出模式,程序从指向源的输入流中读取源中的数据.源可以是文件.网络.压缩包或者其他数据源. 输出流的指向是数据要到达的目的地,程序通过向输出流中写入数据把信息传递到目的地.输出流的目标可以是文件.网络.压缩包.控制台和其他数据输出

Linux下c++程序内存泄漏检测代码范例

Linux下对于程序内存泄漏检测的方法很多,最常用的的莫过于使用valgrind工具.但是valgrind相当于让程序在虚拟机中运行,会带来较大的系统资源开销,还会对程序的运行效率产生较大影响,对于那种资源占用大的程序,如果需要长时间运行才能暴露的泄漏问题,它就显得不太好用. linux下的c++程序中自己实现一个轻量级的泄漏检测代码其实是比较方便的,下面我就给出一个简单的范例,并作简单的说明.当然,我们还是应该提倡使用共享指针,用共享指针自动管理内存可以避免内存泄漏这样的不必要的麻烦. 基本原

DataInputStream(二进制输入流)和DataOutputStream二进制输出流(注意:in是从本地文件输入到程序中,out是从程序输出到本地种)

//切记以数据类型输出就以什么数据类型读入, //例如: dos.writeInt(100);写入,读取:dis.readUTF()有时会出现意想不到的错误,所以要时刻记得以数据类型输出就以什么数据类型读入 //DataInputStream(二进制输入流) public class DataInputStreamDemo { //二进制流(读操作) public static void main(String[] args) { FileInputStream fis = null; Data

FileOutputStream字节输出流和FileInputStream输入流(切记:out是输出到本地中,in是输入到程序中)这里介绍大文件和小文件的读取方式

//FileOutputStream public class FileOutputStreamDemo { /**字节流:适用于任何文件,以字节为单位,进行读写操作  *字节流操作步骤:  *1.创建文件对象  *2.创建字节流  *3.读写操作  *4.关闭流  */ //字节流(写操作) public static void main(String[] args) { String messageString = "hello world";  byte[] bytes = me

Runtime.getRuntime.exec()执行linux脚本导致程序卡死有关问题

Runtime.getRuntime.exec()执行linux脚本导致程序卡死问题问题: 在Java程序中,通过Runtime.getRuntime().exec()执行一个Linux脚本导致程序被挂住,而在终端上直接执行这个脚本则没有任何问题.原因: 先来看Java代码: public final static void process1(String[] cmdarray) {        Process p = null;        BufferedReader br = null

为什么linux下多线程程序如此消耗虚拟内存【转】

转自:http://blog.csdn.net/chen19870707/article/details/43202679 权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[-] 探索 灵光一现 刨根问底 意外发现 Author:Echo Chen(陈斌) Email:[email protected] Blog:Blog.csdn.net/chen19870707 Date:Jan.27th, 2015 最近游戏已上线运营,进行服务器内存优化,发现一个非常奇妙的问题,我们的认证服

002 - 在安卓手机上学习C语言-Linux入门 通往程序世界之门-操作系统

Linux入门  通往程序世界之门--操作系统 在上一章中 , 我们讨论了为何要搭建编译环境, 那么多的上仙出场, 我相信大家还能记住的搭建编译环境的原因的. 在讨论的时候, 不知不觉地把Linux操作系统给提出来了, 其实, 使用Windows去教学可能会更方便一点. 毕竟大家都用熟了嘛 , 不过我们是在手机上编程, 手机上使用不了Windows上的工具, 所以Windows暂时是用不上了, 只好转入Linux系统的怀抱了. 在这一章中, 我会简单地介绍一下在Linux的下使用到的命令. 最后