20155222 卢梓杰 myod
2024-09-27 05:11:10
20155222 卢梓杰 myod
- 复习c文件处理内容
- 编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能
- main与其他分开,制作静态库和动态库
- 编写Makefile
- 提交测试代码和运行结果截图, 提交调试过程截图,要全屏,包含自己的学号信息
- 在博客园发表一篇博客,重点写遇到的问题和解决过程
遇到问题:文件的末尾会连同控制符号LF一起输出
解决过程:在读入时做一个控制iscntrl(ch)判断是否是控制字符(需要头文件#include<ctype.h>)
#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>
int main(int argc,char *argv[])
{
FILE *fp;
char ch;
char str[16];
int i=0,j;
if((fp = fopen(argv[1],"r"))==NULL)
{
printf("Failure to open %s !\n",argv[0]);
exit(0);
}
while((ch=fgetc(fp))!=EOF&&(!iscntrl(ch)))
{
str[i]=ch;
i++;
if(i==16)
{
i=0;
for(j=0;j<16;j++)
printf("%4d",str[j]);
printf("\n");
for(j=0;j<16;j++)
printf("%4c",str[j]);
printf("\n");
}
}
for(j=0;j<i;j++)
printf("%4d",str[j]);
printf("\n");
for(j=0;j<i;j++)
printf("%4c",str[j]);
printf("\n");
fclose(fp);
return 0;
}
最新文章
- xUnit入门一
- codeforces泛做..
- 一种更清晰的Android架构(转)
- Oracle中把一个DateTime的字符串转化成date类型。to_date(&#39;2016/12/8 18:55:43&#39;,&#39;yyyy/MM/dd hh24:mi:ss&#39;),
- Manifest文件简介
- windows server 2008 asp连接数据库sql2000失败
- AlertDialog与DialogFragment
- taobao面试要点
- myeclipse 2013 SR2 安装svn
- lpc1788IO口模拟IIC
- pyv8安装
- 201521123060 《Java程序设计》第13周学习总结
- ch340是什么芯片
- 0_Simple__asyncAPI
- An incompatible version [1.1.29] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]
- linux-shell系列8 netstat用法
- GCC 提供的原子操作
- 新手MySQL工程师必备命令速查手册
- 如何让windows启动后,自动加载一个DLL
- Android SDK和ADT无法更新的解决办法
热门文章
- php给$_POST赋值会导致值为空
- [BZOJ 2186][SDOI 2008] 莎拉公主的困惑
- 015.2Condiction接口
- Zookeeper学习之路 (三)shell操作
- 递归根据父ID 找所有子类ID
- keepalived 的进程/usr/sbin/keepalived -D 只有2个
- Gradle Goodness: Renaming Files while Copying
- 允许跨域资源共享(CORS)携带 Cookie (转载)
- C++获取毫秒级时间戳
- jquery toggleclass方法