C语言调试技巧:stdin,stdout,stderr
stdin,stdout,stderr流
介绍
stdin,stdout,stderr是标准的输入输出流。其中,stdin是访问键盘输入,stdout和stderr分别是向终端输出数据。
关键函数 fscanf/fprintf
/* 所在头文件 */
#include <stdio.h>int fscanf(FILE *stream, const char *format, ...)
int fprintf(FILE *stream, const char *format, ...)/* 特别的, scanf 和 printf 是专门用于向终端stdin和stdout 输入输出的函数 */
int printf(const char *format, ...)
int scanf(const char *format, ...)/* 扩展,如果需要字符串和流输入进行交互的话, 则使用 */
int sscanf(const char *str, const char *format, ...)
int sprintf(char *str, const char *format, ...)
例子
#include <stdio.h>int main(int argc, char *argv[]) {char str[10];fscanf(stdin, "%s", str);fprintf(stdout, "this is out:%s\n", str);fprintf(stderr, "this is err:%s\n", str);
}
将输入输出流重定向到文件中
FILE *freopen(const char *filename, const char *mode, FILE *stream)
freopen函数通常用于将stdin源内容重定向为文件,并且将stdout或stderr源内容重定向为文件,用于log保存和记录使用。
#include <stdio.h>int main() {char a;FILE *in = freopen("in.txt","r",stdin);FILE *out = freopen("out.txt","w",stdout);while (!feof(stdin)) {scanf("%c\n", &a);printf("%c\n", a);}fclose(in);fclose(out);return 0;
}
C语言调试技巧:stdin,stdout,stderr相关推荐
- linux 输出重定向_Linux--文件描述符和stdin,stdout,stderr
基本概念 1. 文件描述符 总览: 当一个程序成功向操作系统请求访问一个打开的文件, 内核会返回一个指向内核中全局文件表(global file table)中的入口点(entry)的文件描述符. 文 ...
- 利用stdin stdout stderr及POSIX-linux机制重定向写日志
利用stdin stdout stderr及POSIX-linux机制重定向写日志 由open返回的文件描述符一定是该进程尚未使用的最小描述符.由于程序启动时自动打开文件描述符0.1.2,因此第一次调 ...
- WorkerMan源码分析(resetStd方法,PHP中STDIN, STDOUT, STDERR的重定向)
WorkerMan中work.php中 resetStd 方法中代码如下 public static function resetStd(){if (!static::$daemonize || st ...
- stdin, stdout, stderr
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.pandas是什么? 二.使用步骤 1.引入库 2.读入数据 总结 前言 在通常情况下,Linux/UNIX每个程 ...
- C语言调试技巧(以vs编译器为例)
实用调试技巧 什么是bug 调试是什么,调试有何重要 调试是什么? 调试的基本步骤 Debug和Release的介绍. Windows环境调试介绍 调试快捷键 调试的时候查看程序当前信息 查看临时变量 ...
- Linux Shell 文件描述符 及 stdin stdout stderr 重定向
Abstract: 1) Linux Shell 命令的标准输入.标准输出.标准错误,及其重定位: 2)Linux Shell 操作自定义文件描述符: 文件描述符是与文件相关联的一些整数,他们保持与已 ...
- JavaScript语言调试技巧
1. 使用alert()语句进行调试 当不能定位程序发生错误引发的异常时,可以采用代码跟踪方式查找错误,这时可以将alert()语句放在程序的不同位置,用它来显示程序中的变量及函数返回值等. < ...
- C语言调试技巧:main函数输入参数
带入参的main函数 介绍 带入参的main函数主要用于一些基本调试,main函数的入参在main函数里被解析为字符串,因此根据具体的调试业务可以需要将字符串转为相应的int类型或double类型进行 ...
- linux下的各个语言中stdin,stdout和stderr理解
在linux中经常会看到stdin,stdout和stderr,这3个可以称为终端(Terminal)的标准输入(standard input),标准输出( standard out)和标准错误输出( ...
最新文章
- 我国企业大数据的发展与应用总览
- Oracle Database Appliance ODA开箱视频
- 用__builtin_return_address获得程序运行栈情况【转】
- bsp模型适用于图计算_CODE V微信简报:光束合成传播算法(BSP)
- SpringDataRedis对Redis的数据类型的常用操作API的使用代码举例
- Windows Powershell的一些常规操作命令
- C++学习基础八——重载输入和输出操作符
- MonoRail MVC应用(2)-构建多层结构的应用程序
- ruby 生成哈希值_哈希== Ruby中的运算符
- REVERSE-PRACTICE-CTFSHOW-3
- Ubuntu 11.04 beta 2发布!
- 【英语学习】【医学】Unit 08 The Cardiovascular System
- Powershell About Active Directory Group Membership of a domain user
- 第十:Pytest中的yield操作
- Java统计文件行数
- centos7搭建CDH
- 【安全攻防知识-4】CTF之MISC
- 基于html人事管理报告,人事管理工作实习报告范文
- 从百度“童年英雄的AI幻想”互动展说起,看AI如何赋能艺术?
- 【现已失效】【转载】QQ空间一键点赞方法