Что произойдет, если я сравню два символа следующим образом:
if ('a' == 'b')
doSomething();
Мне действительно любопытно узнать, что делает язык (и компилятор), когда находит такое сравнение. И, конечно, если это правильный способ сделать что-то, или я должен использовать что-то вроде strcmp()
.
EDIT
Подожди, подожди.
Поскольку кто-то не понял, что я имею в виду, я решил объяснить по-другому.
char x, y;
cout << "Put a character: ";
cin >> x;
cout << "Put another character: ";
cin >> y;
if (x == y)
doSomething();
Конечно, в скобках if
вы можете заменить ==
любым другим оператором сравнения.
Что я действительно хочу знать, так это то, как персонаж рассматривается в C / C ++? Когда компилятор сравнивает два символа, как он узнает, что «a» отличается от «b»? Это относится к таблице ASCII?