143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
||||||
1 | ||||||
Оператор if. Сравнение strlen(char x) != 318.02.2013, 15:27. Показов 1583. Ответов 15
Метки нет (Все метки)
Что то не понял, почему не сравнивает...
Вот код который поидее должен работать:
Может кто помочь ?
0
|
18.02.2013, 15:27 | |
Ответы с готовыми решениями:
15
Strlen и бинарные данные в char - как выполнить их отправку Посимвольное сравнение: оператор "==" не может применяться к операндам типа string и char Сравнение текста из файла и сравнение с текстом в программе char - Dev C++ Сравнение разных типов *Char и Char |
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|||||||||||
18.02.2013, 15:29 | 2 | ||||||||||
что такое у тебя ne?
0
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
||||||||||||||||
18.02.2013, 15:37 [ТС] | 3 | |||||||||||||||
далее
0
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
||||||||||||||||
18.02.2013, 15:42 | 4 | |||||||||||||||
разберись как можно заполнять массивы) если ничего не путаю написав
Добавлено через 2 минуты ну да для
0
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
|||||||||||||||||||||
18.02.2013, 15:50 [ТС] | 5 | ||||||||||||||||||||
1. В начале я его просто обнуляю этим
2. Мне не нужно 5, 5 - это просто максимальная длина массива. 3. В том то и дело что для
0
|
177 / 163 / 21
Регистрация: 12.02.2013
Сообщений: 410
|
|
18.02.2013, 15:59 | 6 |
Старина, правильно ли я понял, что ты хочешь, чтобы у тебя окно с ошибкой вылезало, если:
длина не совпадает с 1 или длина не совпадает с 3 ? Короче) Мне думается, ты напутал с условием и там нужно && вместо ||
1
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|
18.02.2013, 16:01 | 7 |
ты меня начинаешь запутывать приведи весь код, так обрывками ничего не понятно
0
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
|
18.02.2013, 16:10 [ТС] | 9 |
Ржу нимагу =) Реально... поменял на && и всё заработало.
Но что то я не понимаю логики. Ведь "||" - это или. А "&&" - это и. Верно мне нужно чтоб "если длина не совпадает с 1 или с 3 то... Но ведь "ИЛИ" =) Алгоритм решён, кланяюсь в ноги. Теперь хочется "понять" почему не "||" а "&&" надо было =)
0
|
177 / 163 / 21
Регистрация: 12.02.2013
Сообщений: 410
|
|
18.02.2013, 16:11 | 10 |
Вот и я о том же)))) А выглядит оно, кстати, довольно безобидно)))))
0
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|
18.02.2013, 16:11 | 11 |
алгебры логики не было?)
0
|
177 / 163 / 21
Регистрация: 12.02.2013
Сообщений: 410
|
|
18.02.2013, 16:14 | 12 |
Ты хотел обозначить следующее: если число (в твоем случае - длина) не входит в множество {1, 3}, то вывести диалог.
это обозначает следующее: число не равно 1 и (одновременно с этим) не равно 3 Так - понятно?)))
0
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
||||||
18.02.2013, 16:15 [ТС] | 13 | |||||
Институт был паршивым =)
Пока делаю первый свой проэкт БД на С++ получил знаний больше (за 3 месяца) чем за 3 года обучения в инсте. На самом деле я до сих пор не могу дойти почему "И" ))) Я отталкиваюсь от того что:
видимо в условии != оно должно звучать иначе )
0
|
Диссидент
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
18.02.2013, 16:16 | 14 |
Смотри. n!=1 - это все числа не равные 1 = 2,3,4,5 ...
n!=3 это 1,2,4,5... Операция "||" дает объединение этих множеств. "&&" напротив - пересечение (n!=1 || n!=3) === (!(n==3 && n==1)) Внутреняя скобка всегда дает false. !false = true.
2
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
|
18.02.2013, 16:21 [ТС] | 15 |
Байт, верно, просто когда то, когда я изучал по (видимо галимой) книжке С++, там говорилось что "||" - логическое или, а "&&" - логическое И. И всегда когда программировал на это опирался и ёмаё за 4 года никогда не сталкивался с тем что это не так. Сейчас открыл другую книгу и увидел что, те логические операции были " сложением и умножением" =)
0
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|
18.02.2013, 16:22 | 16 |
!(a && b ) = !a || !b
!(a || b ) = !a && !b a && a = a a || a = 1 (true) так может пригодится
1
|
18.02.2013, 16:22 | |
18.02.2013, 16:22 | |
Помогаю со студенческими работами здесь
16
Почему в коде записано strlen()+1 вместо strlen() Ошибка в strcpy_s(S + pos, const char 512, S + pos + strlen(str); IntelliSense: отсутствует оператор "<<", соответствующий этим операндам типы операндов: std::basic_ostream<char, std::char_traits<char> Оператор new и char Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |