练习3.2
来源:互联网 发布:2016淘宝双十一成交额 编辑:程序博客网 时间:2024/04/28 13:42
编一个函数escape(s,t),将字符串t复制到s中,并在复制过程中将换行符、制表符转换成\n\t可见字符。
再编写一个具有相反功能的函数。
代码:
#include <stdio.h>#include <stdlib.h>void escape(char *s, const char *t);void rescape(char *s, const char *t);int main(int argc, char *argv[]){ char s[30] = ""; char t[20] = "hello world\\t!\\n"; escape(s, t); rescape(s, t); printf("%s", s); return 0;}void escape(char *s, const char *t){ size_t j = 0; for (size_t i = 0; t[i] != '\0'; ++i) { switch (t[i]) { case '\t': { s[j++] = '\\'; s[j++] = 't'; break; } case '\n': { s[j++] = '\\'; s[j++] = 'n'; break; } case ' ': { s[j++] = '#'; break; } default: s[j++] = t[i]; } } s[j++] = '\0';}void rescape(char *s, const char *t){ size_t j = 0; for (size_t i = 0; t[i] != '\0'; ++i) { switch (t[i]) { case '\\': { if (t[i+1] == 't') { ++i; s[j++] = '\t'; } else if (t[i+1] == 'n') { ++i; s[j++] = '\n'; } else { s[j++] = '\\'; } } break; default: { s[j++] = t[i]; } } } s[j++] = '\0';}
- 练习3.2
- 练习3.2
- 练习 3.2
- APUE课后练习3.2
- 3.2 实验练习
- 练习3.2,3.3,3.4
- 3.2练习二
- 3.2常用技巧练习
- 编程练习3.2
- 练习
- “++”“--”练习
- 练习
- 练习
- 练习
- 练习
- 练习
- 练习
- 练习
- 增广路求网路最大流
- 练习3.1
- jq unbind方法
- 最小费用最大流问题
- 个人知识管理是职场必修课
- 练习3.2
- Windows LM/NTLM HASH加密及获取工具
- 文本编辑器--SCITE系列(一)——初识 SCITE
- 浅谈 c++ 类,继承类,有虚函数的类,虚拟继承的类的内存布局,使用vs2010打印布局结果。
- 学习Spring框架等技术的方向、方法和动机
- SPFA算法
- 朴素字符串匹配
- Excel中使用填充命令填充数据的方法
- phpcms调用同级栏目下的方法(单页和列表页和内容页各自不同)