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

Тип BOOL - C++

Восстановить пароль Регистрация
 
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2014, 04:36     Тип BOOL #1
Что API функции возвращают в качестве TRUE? 1? Или любой не 0?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IrineK
Заблокирован
12.04.2014, 05:42     Тип BOOL #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <Windows.h> 
#include <iostream>
 
int main () 
{   BOOL check;
    check = -5;
 
    while (++check < 5)
        if (check == TRUE)
            std::cout << check << "\tTRUE\n";
        else
            std::cout << check << "\tFALSE\n";
    
    std::cin.get();
    return 0;
}
Изображения
 
IrineK
Заблокирован
12.04.2014, 05:51     Тип BOOL #3
Однако:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <Windows.h> 
#include <iostream>
 
int main () 
{   BOOL check;
    check = -5;
 
    while (++check < 5)
        if (check)
            std::cout << check << "\tTRUE\n";
        else
            std::cout << check << "\tFALSE\n";
    
    std::cin.get();
    return 0;
}
Изображения
 
IrineK
Заблокирован
12.04.2014, 05:51     Тип BOOL #4
Т.е. хотим получить TRUE только на 1, должны проверять на равенство явным образом.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2014, 06:00  [ТС]     Тип BOOL #5
Я знаю, как надо проверять, меня интересует, что возвращают именно API-шные функции.
IrineK
Заблокирован
12.04.2014, 06:04     Тип BOOL #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Первоисточник:
WinDef.h

C++
1
2
3
4
5
6
7
#ifndef FALSE
#define FALSE               0
#endif
 
#ifndef TRUE
#define TRUE                1
#endif
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.04.2014, 11:52     Тип BOOL
Еще ссылки по теме:

C++ Тип bool возвращает 1,а не true
C++ тип bool ошибка обработки
Можно ли каким-то образом наследовать тип bool C++

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

Или воспользуйтесь поиском по форуму:
Убежденный
Системный программист
 Аватар для Убежденный
14175 / 6190 / 981
Регистрация: 02.05.2013
Сообщений: 10,297
Завершенные тесты: 1
12.04.2014, 11:52     Тип BOOL #7
Цитата Сообщение от taras atavin Посмотреть сообщение
что возвращают именно API-шные функции.
Как правило, либо FALSE, либо ненулевое значение, которое
логически приравнивается к TRUE. То есть, проверять успех вызова
какой-нибудь FindNextFile таким образом
C
1
2
3
4
if (FindNextFile(hFind, &wfd) == TRUE)
{
    // ...
}
неверно.
Yandex
Объявления
12.04.2014, 11:52     Тип BOOL
Ответ Создать тему
Опции темы

Текущее время: 21:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru