Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Pam
0 / 0 / 0
Регистрация: 22.11.2010
Сообщений: 10
#1

Множественные char условия в условных операторах - C++

01.08.2013, 14:59. Просмотров 454. Ответов 9
Метки нет (Все метки)

Такой вопрос. Как сделать условия типа:
C
1
2
3
const char *Type;
if (Type == "One" || "ONE" || "one"){}
else if (Type == "Two" || "TWO" || "two"){}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.08.2013, 14:59     Множественные char условия в условных операторах
Посмотрите здесь:

Подскажите в условных операторах - C++
подскажите пожалуйста Даны три вещественных числа. Вывести на экран: а) те из них, которые принадлежат интервалу (а-b), б)те из них,...

ошибка в условных операторах - C++
где здесь ошибка? #include <iostream> #include <math.h> using namespace std; int main() {

Путаница в операторах - C++
Что же возвращает 6-ая строка? BOOL String::Invariants() const { #ifdef SHOW_INVARIANTS cout << "Invariants Tested" << endl; ...

Синтаксис в операторах while и do while - C++
Всем драсте потихоньку балуюсь с++ мозг плавится слишком уж придирчивый язык к синтаксису,выкладываю мою писанину, вопрос собственно по...

Нужно ли писать 'this' в операторах - C++
Нужно ли писать 'this' в операторах типа this->Edit1->Text = 'qqq' и чем отличается выполнение подобного оператора с 'this' и без него

Есть ли ошибка в операторах - C++
Задано опис: FILE f1,f2; float f; long l; char c;Каждый вариант вопроса содержит фрагмент программы, использующей приведенные...

Выход на биты в поразрядных операторах - C++
Здравствуйте. Обьясните пожалуйста есть код: #include <iostream.h> #include <conio.h> #pragma argsused void...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
01.08.2013, 15:05     Множественные char условия в условных операторах #2
C++
1
if (Type == "One" || Type == "ONE" || Type == "one"){}
Jupiter
Каратель
Эксперт С++
6552 / 3972 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
01.08.2013, 15:07     Множественные char условия в условных операторах #3
Pam, вы в курсе что сравниваете указатели, а не строки?
nonedark2008
883 / 622 / 125
Регистрация: 28.07.2012
Сообщений: 1,662
01.08.2013, 15:15     Множественные char условия в условных операторах #4
Pam, для сравнения используй strcmp(str1, str2) == 0
gray_fox
What a waste!
1411 / 1140 / 55
Регистрация: 21.04.2012
Сообщений: 2,362
Завершенные тесты: 3
01.08.2013, 15:16     Множественные char условия в условных операторах #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <cctype>
#include <cassert>
 
// ...
 
bool iequals(char const* lhs, char const* rhs) {
   assert(lhs);
   assert(rhs);
 
   for ( ; lhs && rhs; ++lhs, ++rhs) {
      if (::tolower(*lhs) != ::tolower(*rhs)) {
         return false;
      }
   }
 
   return !(lhs || rhs);
}
 
// ...
 
if (iequals(Type, "one")) { /* ... */ }
Tulosba
:)
Эксперт С++
4392 / 3235 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
01.08.2013, 16:14     Множественные char условия в условных операторах #6
gray_fox, есть же stricmp.
Jupiter
Каратель
Эксперт С++
6552 / 3972 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
01.08.2013, 16:21     Множественные char условия в условных операторах #7
Tulosba, он не входит в стандарт
Tulosba
:)
Эксперт С++
4392 / 3235 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
01.08.2013, 16:50     Множественные char условия в условных операторах #8
Jupiter, действительно. Но может быть входит в реализацию используемого ТС компилятора.
gray_fox
What a waste!
1411 / 1140 / 55
Регистрация: 21.04.2012
Сообщений: 2,362
Завершенные тесты: 3
01.08.2013, 21:00     Множественные char условия в условных операторах #9

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
gray_fox, есть же stricmp.
Я его тоже в начале указал, потом вспомнил про strcasecmp, поглядел, и...)



Добавлено через 1 час 5 минут
lol я и код то кривой написал) поправил:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <cctype>
#include <cassert>
 
// ...
 
bool iequals(char const* lhs, char const* rhs) {
   assert(lhs);
   assert(rhs);
 
   for ( ; *lhs && *rhs; ++lhs, ++rhs) {
      if (::tolower(*lhs) != ::tolower(*rhs)) {
         return false;
      }
   }
 
   return !(*lhs || *rhs);
}
 
// ...
 
if (iequals(Type, "one")) { /* ... */ }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.08.2013, 21:19     Множественные char условия в условных операторах
Еще ссылки по теме:

Найдите ошибки в операторах ввода/вывода - C++
Помогите плз ответить на вопросы: 3. Найдите ошибки в операторах ввода/вывода (ответ пояснить): a) cout &lt;&lt; &quot;\n x%1&quot;; b) ...

Какие ограничения накладываются на объявления в операторах - C++
Вопрос: какие ограничения накладываются на объявления в операторах?

О классах и конструкторах и об операторах case c {} и без. Нюансы - C++
Зачем в С++ имеется возможность определять методы вне тела класса через разделитель ::? class green { private: int...

операторы ввода и вывода, форматы используемые в этих операторах {c++} - C++
операторы ввода и вывода, форматы используемые в этих операторах... помогите плиз очень надо.... особенно форматы..... заранее...

printf, множественные аргументы - C++
void MyPrint(const char *message, ...) { * * printf(message, ...); // не вытаскивая просто передать дальше } Как организовать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
OhMyGodSoLong
01.08.2013, 21:19     Множественные char условия в условных операторах
  #10

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
Jupiter, действительно. Но может быть входит в реализацию используемого ТС компилятора.
Цитата Сообщение от Jupiter Посмотреть сообщение
Tulosba, он не входит в стандарт
А теперь если строки в разных кодировках, или на языке со спеицифичными правилами капитализации (банальный пример: немецкий)? Это так, к вопросу, почему не стоит лепить регистронезависимое сравнение куда ни попадя.

Yandex
Объявления
01.08.2013, 21:19     Множественные char условия в условных операторах
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru