我想制作一个首先输入字符串数组的程序,然后将其转换为整数,然后将其推送到矢量.
代码是这样的:
string a;
vector<long long int> c;
cout << "Enter the message = ";
cin >> a;
cout << endl;
cout << "Converted Message to integer = ";
for (i=0;i<a.size();i++)
{
x=(int)a.at(i);
cout << x << " "; //convert every element string to integer
c.push_back(x);
}
Run Code Online (Sandbox Code Playgroud)
输出 :
Enter the message = haha
Converted Message to integer = 104 97 104 97
Run Code Online (Sandbox Code Playgroud)
然后我把它写在一个文件中,在下一个程序中我想把它读回来,并将它转换回字符串,我的问题是如何做到这一点?将矢量[104 97 104 97]转换回字符串"haha".
我非常感谢任何帮助.谢谢.
我用c ++编写了代码,用于加密和解密.第一个代码在向量中创建一个输出,然后使用fwrite将其写入文件,第二个代码使用fread从第一个代码读取输出.以下是我的代码片段:
第一个代码:
.....
string a;
vector<long long int> c;
cout << "message to be encrypted = ";
cin >> a;
cout << endl;
cout << "Encrypted message : ";
for (i=0;i<a.size();i++)
{
x=(int)a.at(i);
cout << x << " ";
c.push_back(powerMod(x,e,n));
}
for (i=0;i<c.size();i++)
{
//cout << char(c.at(i));
}
cout << endl;
//Write ciphertext c to a file
FILE * pWrite;
pWrite = fopen ("ciphertext", "w");
fwrite (&c , sizeof(c), 1, pWrite);
fclose (pWrite);
Run Code Online (Sandbox Code Playgroud)
输出是:
message to be encrypted = …Run Code Online (Sandbox Code Playgroud)