Я создаю шифр vigenere в C++, и когда я запускаю код, он имеет ошибку: (Нажмите «Повторить попытку для отладки приложения») ConsoleApplication2.exe вызвал точку останова. Ошибка отладки! программы: C: \ Windows \ system32 \ MSVCP140D.dll Файл: C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ VC \ Include \ xstring Line: 1681 Выражение: строка подстрочный из диапазона Для получения дополнительной информации о том, как ваша программа может вызвать ошибку , см. документацию Visual C++ в отношении утверждений. (Нажмите «Повторить», чтобы отладить приложение) ConsoleApplication2.exe вызвал точку останова. Программа '[3668] ConsoleApplication2.exe' вышла с кодом -1073741510 (0xc000013a). вот код:Ошибка Vigenere Cipher в C++
#include <iostream>
#include <string>
#include "stdafx.h"
using namespace std;
int main()
{
string plaintext, key, Result;
int k = 0;
cout << "Enter the plain text: ";
cin >> plaintext;
cout << "Enter the key word: ";
cin >> key;
for (int i=0; i<plaintext.length(); i++)
{
Result[i] = (((plaintext[i] - 97) + (key[k] - 97)) % 26) + 97;
k++;
if (k == 6)
(k = 0);
}
cout << " \n\n\n";
for (int i=0; i<plaintext.length(); i++)
cout <<" "<< Result[i];
cout << "\n\n\n\n";
return 0;
}
Ошибка в заявлении для он говорит что-то о < знак, и я не знаю, почему. Любая помощь? Спасибо :)
Да и это! :) – systemcpro
Мне нужно скопировать этот Result.resize (plaintext.size()); или есть еще? @NathanOliver –
@warren от того, что я видел, да, но у вас могут быть другие проблемы. Это просто исправляет нарушение доступа. – NathanOliver