#include<bits/stdc++.h>
#include<cstring>
#include<fstream>
#include<string>
#define MAX_LINES 1000
using namespace std;
int main(){
string filename;
ifstream file;
string array [MAX_LINES];
cout << "filename: ";
cin >> filename;
file.open(filename);
if (file.fail()){
cout << "file failed to open" << endl;
return 1;
}
int lines = 0;
while(!file.eof()){
int lines = 0;
getline(file, array[lines]);
lines++;
}
file.close();
for (int i = 0; i , lines; i++){
cout << array [i] << endl;
}
void print_character_count(char*s);
void decrypt();
return 0;
}
void decrypt(){
char message [100], ch;
int i, key;
cout << "enter message:";
cin.getline(message,100);
cout << "enter key:";
cin >> key;
for(i = 0; message[i] != '\0'; ++i) {
ch = message[i];
if(ch >= 'a' && ch <= 'z'){
ch = ch - key;
if(ch < 'a'){
ch = ch + 'z' - 'a' + 1;
}
message[i] = ch;
}
else if (ch >= 'A' && ch <= 'z'){
ch = ch - key;
if (ch > 'a'){
ch = ch + 'Z' - 'A' + 1;
}
message[i] = ch;
}
}
cout << "decrypted message: " << message;
}
我试着写一个程序,从一个加密文件中获取文本,现在我试着把解密转换成一个函数。它编译得很好,但是当我运行它的时候什么也没发生,有人得到帮助吗?它作为一个程序运行得很好,可以工作,但是当我把它从main中分离出来并试图声明它的时候,它就停止工作了
1条答案
按热度按时间0kjbasz61#
它失败是因为实际上根本没有调用
main()
中的函数。是函数原型,* 声明 * 函数但不应用它们。要实际调用函数
decrypt()
,您需要添加以下行遵循函数原型。
我想补充的是,将原型放在函数内部是不好的形式;通常需要在调用原型的函数之前创建原型。