К вашему сведению, вы можете использовать str [countchar] вместо str.substr (countchar,
несколько пунктов:
1) Ваш код в порядке, ваш алгоритм - нет.Возьмите лист бумаги и пошагово проделайте то, что вы делаете.
2) Я вижу, что вы пытаетесь сделать ... что-то вроде следующего непроверенного кода, верно?
for(int i=0; i<sizeword; ++i) {
stackword.push(str[i]);
queueword.push(str[i]);
}
pali = true;
for(int i=0; i<sizeword; ++i) {
if(stackword.top() != queueword.front()) {
pali = false;
break;
}
stackword.pop();
queueword.pop();
}