Программа пропускает мои циклы и концы. Супер разочарование. Я даже поставил значение AnsCheck в false до цикла while. Не повезло. Программа не делает ничего из цикла While. Вот соответствующий код:Почему мой цикл While Loop пропускается? C++
bool AnsCheck;
AnsCheck = false;
while (AnsCheck = false)
{
getline(cin, Ans1);
if (Ans1 != "T" || Ans1 != "F")
{
cout << "Please Enter T for true or F for False" << endl;
cout << "answer not T or not F" << endl; // debugging
}
else
{
AnsCheck = true;
cout << "changed bool to true" << endl;
}
}
И поскольку это иногда случается, что люди используют назначение, где хотят использовать операторы сравнения, золотое правило: Константы влево. Если бы вы написали '' while (false = AnsCheck) '' вы бы получили ', то не можете присваивать постоянному значению'. – BitTickler
Я удивлен, что ваш компилятор не предупредил вас о том, что назначение используется как bool. Вероятно, вы должны включить '-Wall' (или его эквивалент в вашем компиляторе). – Alejandro