vendredi 24 février 2017

C++ .exe has stopped working error in code blocks

I wrote the small program in c++, and it doesn't have any error on compile time but when I run the program, I'm facing with the error. you can see my code in below.

Please help me to resolve it thanks

#include <iostream>
#include <fstream>
#include <string>

#include <sstream>
#include <stack>
#include <queue>

 #include "QueType.h"
 #include "StackType.h"
 #include "tools.hpp"

 #include <locale>

 #include <list>

 using namespace std;



 bool isPalindrome(const string& stringToCheck)
 {
 string line2;
 bool pal;
 string wrdF;
 stack<char> word1;
 queue<char> word2;

 char x,y;

 line2=stringToCheck;

// make lowercase
for (size_t j=0; j< line2.length(); ++j)
{
line2[j] = tolower(line2[j]);
}

std::locale loc;
std::string str = line2 ;
std::string::size_type al=0;

wrdF = "";
std::string::size_type al2 = 0;
while ( (al<str.length())  ) {

  if (std::isalnum(str[al])) {
      wrdF += str[al];

      al2++;
  }

  ++al;
 }

ItemType* items = new ItemType[al2]; 
strcpy(items,wrdF.c_str());

int oo=(int)al2;
for (int q=0;q<oo ;q++)
{
if (items[q] != ' ') {
    word1.push(items[q]);
    word2.push(items[q]);
 }
}
pal = true;
while (!word1.empty() && !word2.empty())
{
    x=word1.top();
    y=word2.front();
    if (x != y)
    {
        cout << "No palindrome" << endl;
        pal=false;

        break;
    }
    else
    {
        word1.pop();
        word2.pop();
    }

}

if (pal == true)
    cout << " palindrome" << endl;

return(pal);

}


 int main()
  {

 int row=0;
 string line;
 bool pali;
 ifstream myfile ("palindrome-testfile.txt");

ofstream palin("palindromes.log");
ofstream nopalin("nopalindromes.log");

if (myfile.is_open())
{

 while ( getline (myfile,line) )
 {

 //      cout << line << '\n';
  ++row;
 //      cout<<row<<". ";


 pali= isPalindrome(line);


 if (pali)
 {
    palin << line << endl;
 }
 else
 {
    nopalin << line << endl;
 }



 }




 myfile.close();
 }

 else cout << "Unable to open file";

 return 0;
 }

enter image description here

Aucun commentaire:

Enregistrer un commentaire