所以这段代码只是我一直在处理的东西,但是我似乎无法使其正常工作。 switch语句在完成第一种情况后将不会继续循环。我只是想让它实质上改变单词中的字母。我不太确定如何解决它。任何帮助,将不胜感激。
这总是告诉我我需要更多单词,所以我只是随意写作,请不要介意这些单词,它们只是占位符,可以使系统对我的问题归纳为三个句子,从而减少对我的愤怒。
#include <iostream>
#include <cstdlib>
#include <string>
#include <cstring>
#include <fstream>
#include <cmath>
using namespace std;
int main()
{
char ans;
char fileName[50];
string inp;
int length;
ifstream inpFile;
ofstream outFile("output.txt");
do{
cout << "";
cin.getline(fileName, 50);
inpFile.open(fileName);
if(!inpFile.is_open()){
exit(EXIT_FAILURE);
}
string word;
char enc;
char temp;
length = word.length();
char * cstr = new char [length + 1];
strcpy(cstr, word.c_str());
for(int i = 0; i < length; i++){
switch(cstr[i]){
case 'A':{
temp = cstr[i];
temp = '0';
enc = temp;
break;
}
case 'a':{
temp = cstr[i];
temp = '1';
enc = temp;
break;
}
}
cout << "test1";
}
cout << "Test2";
delete[] cstr;
}while(ans == 'Y' || ans == 'y');
cout << "Test3";
}
答案 0 :(得分:1)
您打开了文件,但从未从中读取任何内容。您的可变字将始终为空,因此长度为0。