![]() |
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]() ![]() ![]() |
|
Alca |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 5 Всего: 50 |
BOOL type
Может ли какая-либо API-функция, возвращающая тип BOOL (0 или 1), возвращать значения отличные от 0 и 1? Т.е. в MSDN обычно пишут: если ошибка, то 0, а если успех - значение отличное от 0 (т.е. любое число отличное от нуля). Собственно это меня и смущает. Это сообщение отредактировал(а) Alca - 17.11.2011, 12:33 |
|||
|
||||
Dem_max |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1780 Регистрация: 12.4.2007 Репутация: 16 Всего: 39 |
Может.
Тут все вроде четко написано. -------------------- Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte") |
||||
|
|||||
Alca |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 5 Всего: 50 |
Ну да BOOL это 0 или единица, но может так и не быть ![]() Добавлено через 35 секунд Так зачем тогда тыкать бул, если есть инт?? |
|||
|
||||
feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 9 Всего: 45 |
BOOL (у Microsoft) просто сигнализирует разработчику, что вызов возвращает удача-неудача и всё (хотя здесь возможны весьма удивительные отступления от этого правила). Если возвращается int (скорее, DWORD), то этот DWORD должен нести какую-то дополнительную смысловую нагрузку (хотя и здесь возможны варианты))).
-------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
Dem_max |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1780 Регистрация: 12.4.2007 Репутация: 16 Всего: 39 |
BOOL это некий свой тип который определяется как INT который в свою очередь определяется как int. И между BOOL и bool большая разница как между bool и int. Но всяко мелкософту удобен тип int для возвращаемого значения. Если функция возвращала когда либо BOOL то в другой момент жизни у майкрософт она может возвращать HRESULT
Это сообщение отредактировал(а) GremlinProg - 18.11.2011, 07:23 -------------------- Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte") |
|||
|
||||
Alca |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 5 Всего: 50 |
а это типа что?
![]()
Добавлено через 3 минуты и 12 секунд чёс? |
|||
|
||||
500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 3 Всего: 14 |
кароче упростим ситуацию, winapi возвращает 32 битное значение (в регистре еах если быть точным), а как вы его интерпритируете это уже ваши проблемы, и при успешном запершении вызова не всегда 0 а при ошибке не всегда 1, как пример CreateFile
INVALID_HANDLE_VALUE = -1 ))) -------------------- |
|||
|
||||
Alca |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 5 Всего: 50 |
Я про BOOL, а не про HANDLE
Добавлено @ 23:13 Ну да ладно, буду внимательным с BOOL. Всем спасибо. Это сообщение отредактировал(а) Alca - 17.11.2011, 23:14 |
|||
|
||||
volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 13 Всего: 85 |
Может, и причем это официально задокументировано. BOOL у мелкомягких может принимать "неограниченный диапазон значений" ![]() Далеко ходить не надо. Самая что ни на есть обычная функция, используемая в каждом приложении GetMessage может возвращать:
![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |