我有这个循环语句,我将使用类C语法(C,C ++,Java,JavaScript,PHP等)来表示所有类似的语法: while (c != 'o' || c != 'x') { c = getANewValue(); } 我希望它运行,直到我得到一个'o'或'x' ,但它永远不会退出,即使当c是'o'或'x' 。 为什么不? 我也试过if : if (c != 'o' || c != 'x') { // Show an error saying it must be either 'o' or 'x' } 但即使在c是'o'或'x'时也总是显示错误信息。 为什么?