c语言 ch+=key什么意思,ch-=26什么意思
发布网友
发布时间:2022-12-21 07:56
我来回答
共3个回答
热心网友
时间:2023-10-09 01:30
首先你这是一部分代码,fp,fp1分别是原文件操作指针和加密文件操作指针,key是加密方法,这个可以简单看作加某一个常数值,从而改变输入的字符,达到文件加密的效果。
while那句的意思是只要源文件不空,一直输入字符,每次一个字符;
ch+=key那句可以表示为ch=ch+key,就是加密的操作之一;也就是加一个字符或者常数;
if那句就是判断加密后有没有超出字母的范围;
ch-=26等效于ch=ch-26,假如说if语句为真就执行这句代码,那么就减去26,从而达到加密的效果,26是字母的所有个数;
最后那句就是把加密后的字符放到fp1指针指向的加密文件。
我举个例子,比如说key=5.你取到源文件一个字符‘Y’,那最后加密文件就是‘D’,这就是加密了。
热心网友
时间:2023-10-09 01:30
ch+=key;的意思就是:ch=ch+key
ch-=26;的作用就是ch=ch-26,其中26就是字母表的长度呀(26个英文字母)。
while后面那句表示如果打开的文件不是空的。
你看看ASCII码表,很多东西就明白了!
热心网友
时间:2023-10-09 01:31
ch+=key
等价于
ch=ch+key
ch
-=
26
等价于
ch
=ch-26
if后面的语句跟加密有什么关系?
答:是为了判断加密后的字符是不是还在
a~z之间,比如说a的ascii码是97,z的ascii码是123,a+key的值超过123就会变成乱码了,所以再
ch-26
(26表示26个字母的意思)又落在了
97~123之间,这样就不会乱码。
while后语句是什么意思?
答:是判断从文件读取一个字符,是否已经到了文件末尾。