C输入输出与文件

本文详细介绍了C语言中的输入输出操作,包括单字符I/O、格式化输入输出以及字符串输入输出。接着,文章转向文件I/O,讲解了文件的打开、关闭、重定向、顺序读写和随机读写,以及相关函数的使用方法,如fopen、fclose、fgetc、fprintf等。通过对这些基本概念和函数的解析,读者能够掌握C语言中处理输入输出和文件的基本技能。
摘要由CSDN通过智能技术生成

一、终端I/O

1.单字符I/O:getchar(),putchar()

(1)单字符输入(get character):   

   【 int getchar();】

  • 返回值为输入的字符(ASCII)。可以接受任何字符,包括非打印字符。当一次键入多个字符时按下回车键后getchar开始逐个读取所有字符(包括回车符)。
  • 在某些编译环境下,因为scanf()函数不读取回车符且将其留在输入队列中,下次调用scanf()时会由于先读取到回车符而在读取数据前过早结束输入,所以常在scanf后用【getchar();】读取并丢弃这个回车符。

(2)单字符输出(put character):

   【int putchar(int);】

  • 返回值为输出的字符,参数为要输出的字符(ASCII)。是在stdio.h中定义的含参宏。

2.格式化输入输出

 (1)格式化输出(print format):

   【 int printf(格式控制,输出表列);】

  • 格式控制是一个字符串常量,由普通(转义)字符,转换说明符,转换修饰符组成。普通(转义)字符直接输出(控制光标),转换说明符会按顺序替换为输出表列中的量。常用的格式说明符有:

   <1> %d %ld 整型或长整型

   <2> %c     字符型,参数可以为对应ASCII码或单引号内的字符

   <3> %f %lf 浮点数,double型常用%lf。默认6位小数,自动进行四舍五入

   <4> %s     字符串型,不输入输出'\0'

   <5> %e     用e计数法(科学计数法)输出浮点数

   <6> %x     输出16进制数,%#x输出0x格式

   <7> %o     无符号8进制数

   <8> 浮点数%m.nf,m是说明总宽度,正数代表左对齐负数代表右对齐。默认用空格补位,如果m的最高位为0则用0补位。 

C通过变量类型来将变量值存在堆栈(stack)中,但printf函数在读取时依据转换说明符。如果较长的数据使用较短的说明符只会读取一部分(转换为十进制后可能变成古怪的数字),较短的数据使用较长的说明符会读取下一内存单元中的字符而输出不可预知的结果。

printf函数成功输出会返回输出的字符数(包括打印字符和非打印字符),失败返回一个代表失败类型的负值。

在指定输出位数时可以用*代替数字,但在输出表列的对应位置要有一个对应的int值

 

printf("%.*f",2,2.333);

(2)格式输入(scan format)

   【int scanf(格式控制,地址表列);】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值