Chinaunix首页 | 论坛 | 博客
  • 博客访问: 91531
  • 博文数量: 16
  • 博客积分: 367
  • 博客等级: 一等列兵
  • 技术积分: 245
  • 用 户 组: 普通用户
  • 注册时间: 2011-10-25 22:37
文章分类

全部博文(16)

文章存档

2012年(4)

2011年(12)

我的朋友

分类: C/C++

2011-11-10 21:04:58

今日用数组编写一个“BIFF过滤器”的小程序,功能是实现把用户输入的消息翻译成一定的格式:如,小写转大写,‘S’->5..等等。
程序很快编好了:
可是输出却在正确结果后面输出一段乱码:
分析后发现,数组定义了100空间,实际使用并未使用那么多,后面的空间里面因为数组没有初始化,里面存储的内容未知导致的,于是修改程序,数组定义的时候初始化一下:
问题解决!,大家在使用数组的时候也要注意,分配足够的空间的同时,记得清空原来内存里面的内容,以免出现意外。
阅读(2236) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

sunny_piza2011-11-11 08:46:18


字符的这种有规律替换,其实是一种加密算法。这也让我想到了凯撒密码。
据《高卢战记》描述恺撒曾经使用密码来传递信息,即所谓的“恺撒密码”,它是一种字符替代密码,通过将某个字母按顺序推后起3位起到加密作用,如将字母A换作字母D,将字母B换作字母E。(ABC->DEF)
偏移位数就是密钥, 通信双发事先约定和协商字符的偏移位数(偏移3, 5, 7等均可)。从而实现加解密。

kingersun82011-11-10 21:50:24


变量使用前, 最好是先初始化。比如对于字符数组buf的初始化:
char buf[128] = {0};
或者
memset(buf, 0, sizeof(buf));