我的程序应该从命令行读取加密文件,但我不知道如何传递命令行参数。这些是说明:
*移位密码是一种非常基本的密码算法,其中通过用字母表中后面固定数量的字符(即移位值)的字符替换明文中的每个字符来执行加密。例如,如果我们的移位值为2,那么明文白菜就变成了ecddcig。
很容易看出移位密码如此弱,因为只有 26 种可能的移位方式(这 26 种方式中的一种与根本不移位相同)。您的程序应该在命令行读取已使用移位密码加密的文件的名称。它将使用所有可能的移位值解密文件,然后确定哪个移位值是正确的。程序确定正确的移位值是应用后导致文件单词出现在字典中的最高百分比的值。
*
我编写了将字符串中的字符移动 n 的函数、确定给定单词是否出现在字典中的函数以及将字符串拆分为标记的函数。
在 C 中,您可以使用以下命令访问命令行参数argc
and argv
在主函数中。像这样的事情:
int main(int argc, char *argv[])
{
for (int i = 1; i < argc; i++) {
printf("%s\n", argv[i]);
}
}
请注意,我从 argv 列表中的第二项开始,因为第一项始终是可执行文件本身的名称。
当调用时./program file.txt file2.txt
它会打印
file.txt
file2.txt
希望有帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)