You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++实现RC4文件加密算法输出结果错误问题排查

RC4加密代码修复说明

你需要修改以下几处内容解决输出不符合预期的问题:

  • 删除无效的首字符读取代码
    打开文件后执行的char tekst; plik >> tekst;会提前读走文件第一个字符,导致后续加密流程丢失原文首字节(也就是"Plaintext"的首字母P),直接删除这两行即可。
  • 修正temp变量的类型
    你将temp定义为string类型,但RC4单次加密输出的是单字节结果,把字节异或值赋值给字符串会触发类型异常,输出内容错误。把string temp;修改为unsigned char temp;即可。
  • 补充密文写入输出文件的逻辑
    你当前只把加密结果输出到了控制台,没有写入提前创建的输出文件对象,在循环内cout << temp;后新增一行outfile << temp;即可完成文件写入需求。
  • 可选:使用二进制模式读写文件
    默认文本模式会对特殊字符做转义处理,容易导致二进制密文损坏,建议修改文件打开逻辑:
    // 读文件指定二进制模式
    plik.open(path, ios::binary);
    // 写文件指定二进制模式
    ofstream outfile(printFile, ios::binary);
    

内容的提问来源于stack exchange,提问作者18michal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 06:15:03