Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/29: Рейтинг темы: голосов - 29, средняя оценка - 4.83
20 / 20 / 4
Регистрация: 31.10.2010
Сообщений: 1,240
Записей в блоге: 2

Сравнение дат

03.07.2015, 11:35. Показов 5763. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Существует ли функция для сравнения переменных типа DateTime?
Т.е. у меня есть массив DateTime a и переменная DateTime b. Пробегаюсь по массиву и ищу значения, которые меньше b.
Спасибо.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.07.2015, 11:35
Ответы с готовыми решениями:

Сравнение дат
Подскажите пожалуйста как правильно сравнивать даты. Использую функцию DateUtils.hpp В Мемо1 есть набор дат 08.01.2013 09.01.2013 ...

Сравнение двух дат
Нужно сравнить две даты, первая берется из таблицы, вторая дата это текущая, написал код, выдает ошибку, подскажите CompareDate(Date(),...

Сравнение двух дат
Всем Доброго времени суток!!! Подскажите, пожалуйста, как сравнить 2 даты в формате "ДД.ММ.ГГГГ ЧЧ.ММ.СС" в C++ Builder, для...

10
Эксперт .NET
 Аватар для Rius
13161 / 7720 / 1679
Регистрация: 25.05.2015
Сообщений: 23,516
Записей в блоге: 14
03.07.2015, 11:42
Есть. Вам в простом C++ (откуда тогда этот DateTime определяется?), в C++ .Net или в C++ Builder?
1
Эксперт по математике/физикеЭксперт С++
 Аватар для Ilot
2224 / 1426 / 420
Регистрация: 16.05.2013
Сообщений: 3,647
Записей в блоге: 6
03.07.2015, 11:42
Лучший ответ Сообщение было отмечено Костяныч как решение

Решение

https://msdn.microsoft.com/ru-... -snippet-1
1
20 / 20 / 4
Регистрация: 31.10.2010
Сообщений: 1,240
Записей в блоге: 2
03.07.2015, 11:59  [ТС]
Rius, builder
0
Эксперт .NET
 Аватар для Rius
13161 / 7720 / 1679
Регистрация: 25.05.2015
Сообщений: 23,516
Записей в блоге: 14
03.07.2015, 12:11
Оно?
http://docwiki.embarcadero.com... ompareDate
http://docwiki.embarcadero.com... ompareTime
2
Модератор
 Аватар для D1973
9924 / 6460 / 2457
Регистрация: 21.01.2014
Сообщений: 27,411
Записей в блоге: 3
03.07.2015, 12:20
А что, простое сравнение уже никак не канает?
C++
1
2
3
4
TDateTime a = StrToDateTime("01.07.2015 14:13:12");
TDateTime b = StrToDateTime("01.07.2015 14:15:16");
if(a < b) ShowMessage("A < B");
else ShowMessage("A > B");
1
20 / 20 / 4
Регистрация: 31.10.2010
Сообщений: 1,240
Записей в блоге: 2
03.07.2015, 12:42  [ТС]
D1973, что прям так легко?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33399 / 21509 / 8236
Регистрация: 22.10.2011
Сообщений: 36,907
Записей в блоге: 12
03.07.2015, 12:44
Прям вот в Эмбаркадеро лохи сидят, не догадались, что все так легко, зачем-то написали вот такую лабуду:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function CompareDateTime(const A, B: TDateTime): TValueRelationship;
begin
  // If the dates are the same, then only compare the time
  // This returns the correct result for values below the epoch
  if SameDate(A, B) then
  begin
    Result := CompareTime(A, B);
  end else
  begin
    if SameDateTime(A, B) then
      Result := EqualsValue
    else if A < B then
      Result := LessThanValue
    else
      Result := GreaterThanValue;
  end;
end;
вместо обычного "<"... Может, не все так легко?
1
Эксперт .NET
 Аватар для Rius
13161 / 7720 / 1679
Регистрация: 25.05.2015
Сообщений: 23,516
Записей в блоге: 14
03.07.2015, 13:02
Всё не совсем легко, потому что в C++ Builder тип TDateTime это double. А double на равенство проверять нельзя простым ==.
Что там в исходниках CompareTime?

Добавлено через 8 минут
Операции < и > тоже в случае даты/времени применимо лишь при превышении некоторого лимита.
Почему просто < , >, == и != не переопределены?
1
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
03.07.2015, 13:30
Цитата Сообщение от volvo Посмотреть сообщение
Прям вот в Эмбаркадеро лохи сидят, не догадались, что все так легко, зачем-то написали вот такую лабуду:

Не по теме:


volvo, ты утрируешь или там действительно сидят не компетентные люди?

1
Модератор
 Аватар для D1973
9924 / 6460 / 2457
Регистрация: 21.01.2014
Сообщений: 27,411
Записей в блоге: 3
03.07.2015, 13:46

Не по теме:

Sasha, сообщение volvo явно содержит сарказм :)

В действительности, наверное, все и вправду не так просто, но до сих пор я пользовался методом, который написал и ни разу не обжегся...
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.07.2015, 13:46
Помогаю со студенческими работами здесь

Сравнение временного интервала(дат) с заданной
Приветствую всех, уважаемые форумчане! Заранее прошу простить, если это где-то уже решено(сам не нашел). Пишу на билдере...

Сравнение дат, представленных в текстовом виде
Есть мемо. В нем есть даты. Требуется найти наименьшую дату. Кто знает кроме массива что лучше?

Сравнение дат
Form1-&gt;ADOQuery1-&gt;Close(); Form1-&gt;ADOQuery1-&gt;SQL-&gt;Clear(); AnsiString zap3; zap3=&quot;Delete * from Rezult where...

Сравнение дат в указанном диапазоне
Добрый день! Сравнение отрабатывает не правильно, все перепробовал. Нужно чтобы прога выдала сообщение если системное время попадает в...

Сравнение двух дат и вывод дат находящихся между ними
Здравствуйте! Тут такое дело, вводятся две определенные ДАТЫ в Edit1 и Edit2 в формате ДД.ММ.ГГГГ, нужно найти все ДАТЫ, которые...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Программный отбор значения справочника
Maks 21.03.2026
Процедура ВодителиНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка) / / Отключаем стандартную обработку (стандартное открытие формы выбора без фильтров) . . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru