次のコードを使用して、C++ でファイルを暗号化および復号化しようとしています。
#include <iostream>
void crypt(char* pData, unsigned int lenData, const char* pKey, unsigned int lenKey)
{
for (unsigned int i = 0; i < lenData; i++)
pData[i] = pData[i] ^ pKey[i % lenKey];
}
int main()
{
char* data = (char*)"any binary string here";
crypt(data, 22, "key", 3);
std::cout << data;
}
g++ (tdm-1) 4.5.1
Windows 6.1 (Seven) で (MinGW) を使用してコンパイルしていますが、エラーや警告なしでコンパイルされます。実行しようとすると、「app.exe が動作を停止しました。問題の解決策があるかどうか、Windows がオンラインで確認できます」というウィンドウが表示されます。(そのようなもの、私のWindowsは英語ではありません)。何が悪いのかわかりません。