При написании инструкций if-else в C есть причина, по которой кто-то предпочитал бы использовать оператор "равный" над "не равным", если оба могут дать тот же результат?
В приведенном ниже коде представлен контекст. Если количество аргументов равно 2, строка будет извлекаться от пользователя. Однако, если получено другое значение аргументов, появится сообщение об ошибке.
int main(int argc, string argv[])
{
string msg;
if (argc == 2)
{
msg = GetString();
}
else
{
printf("ERROR: Please only enter a single key! \n");
return 1;
}
Однако я могу достичь того же результата, что и выше, изменив условие цикла if-else как "не равное" и перевернув связанные действия. См. Ниже:
int main(int argc, string argv[])
{
string msg;
if (argc != 2)
{
printf("ERROR: Please only enter a single key! \n");
return 1;
}
else
{
msg = GetString();
}
В любом случае, поскольку оба продукта дают одинаковый результат, следует ли использовать предпочтительный вариант над другим?