将ASCII码值在0~127之间的字符写到磁盘上

/*将ASCII码值在0~127之间的字符写到磁盘上,然后从文件中读出这些字符时,
判断读出的字符是否为可打印字符,若是则直接将该字符显示到屏幕上,否则
将该字符的十进制ASCII码值显示到屏幕上*/ 
#include"stdio.h"
#include"stdlib.h"
#include"ctype.h"
int main()
{
    FILE *fp;
    char ch;
    int i;
    if((fp=fopen("demo.bin","wb"))==NULL)     //以二进制写的形式打开文件
    {
        printf("Failure to open demo.bin !\n");
        exit(0);
    } 
    for(i=0;i<128;i++)
    {
        fputc(i,fp);                          //将字符的ASCII码值写入文件 
    }   
    fclose(fp);
    if((fp=fopen("demo.bin","rb"))==NULL)     //以二进制读的形式打开文件
    {
        printf("Failure to open demo.bin !\n");
        exit(0);
    } 
    while((ch=fgetc(fp))!=EOF)                //从文件中读取字符直到文件末尾
    {
       if(isprint(ch))                        //判断是否为可打印字符
         printf("%c\t",ch);                   //若是可打印字符,则显示到屏幕上
         else
           printf("%d\t",ch);                 //若非可打印字符,则显示该字符的ASCII码值 
    } 
    fclose(fp);
    return 0;
}

运行结果:
这里写图片描述

知识点:
1.函数fputc()用于将一个字符写到一个文件上,其原型为:
int fputc(int c,FILE *fp)
2.”rb”是以二进制读的形式打开文件,而”rb”则是以二进制读的形式打开文件,不可将二者混为一潭。
3.文件有打开就一定要进行关闭,否则会造成运行过在导致卡顿或死机的现象。并且是以fclose(fp)的形式进行关闭之前打开的文件。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值