• C Primer Plus(6) 中文版 第8章 字符输入/输出和输入验证 8.4 重定向和文件


    8.4 重定向和文件
    输入和输出涉及函数、数据和设备。
    在默认情况下,C程序使用标准I/O包查找标准输入作为输入源,这就是前面介绍过的stdin流,它是把数据读入计算机的常用方式。它可以是一个过时的设备,或是键盘,甚至是一些先进技术,如语音输入。然而,现代计算机非常灵活,可以让它到别处查找输入。尤其是,可以让一个程序从文件中查找输入,而不是从键盘。
    程序可以通过两种方式使用文件。第1种方式是,显式使用特定的函数打开文件、读取文件、写入文件、诸如此类。
    第2种方式是,设计能与键盘和屏幕互动的程序,通过不同的渠道重定向输入至文件和从文件输入。换言之,把stdin流重新赋给文件,继续使用getchar()函数从输入流中获取数据,但它并不关心从流的什么位置获取数据。虽然这种重定向的方法在某些方面有些限制,但是用起来比较简单,而且能让读者熟悉普通的文件处理技术。
    重定向的一个主要问题使它与操作系统有关,与C有关。尽管如此,许多C环境中(包括UNIX、Linux和Windows命令提示模式)都有重定向特性,而且一些C实现还在某些缺乏重定向特性的系统中模拟它。苹果OS X运行在UNIX上,故可用Terminal应用程序来使用UNIX命令模式。
    8.4.1 UNIX、Linux和DOS重定向
    UNIX(运行命令行模式)、Linux(ditto)和Windows命令行模式(模仿旧式DOS命令行环境)都能重定向输入、输出。重定向输入让程序使用文件而不是键盘来输入,重定向输出让程序输出值文件而不是屏幕。
    1. 重定向输入
    windows环境下编译echo_eof.c生成echo_eof.exe可执行文件,运行echo_eof.exe:<

  • 相关阅读:
    读书笔记<高速上手C11 14 17>
    4.1-支持向量机
    2023 柏鹭杯 --- Crypto fractrsa wp
    Cisco简单配置(九)—三层交换机
    ModuleNotFoundError: No module named ‘apt_pkg‘
    和月薪3W的聊过后,才知道自己一直在打杂...
    Java中整数基础知识
    Go常用命令
    C++17新特性的使用场景总结
    常用渗透测试checklist
  • 原文地址:https://blog.csdn.net/weixin_40186813/article/details/126222258