Консультация № 142102
24.08.2008, 14:19
0.00 руб.
0 5 1
Здравсвуйте эксперты, сейчас изучаю СИ пишу на turbo C не могу нигде найти как обьявить булевскую переменную

Обсуждение

Неизвестный
24.08.2008, 14:43
общий
Во всех С нет булевских переменных. Там переменная любая числовая считается истиной, если она имеет ненулевое значение (любое) и ЛОЖЬ, если ноль. Попробуйте так:
Код:
#include <stdio.h>

int main() {
float f = 0;
if (f) printf("TRUE\n");
else printf("FALSE\n");
return 0;
}
Неизвестный
24.08.2008, 14:49
общий
мне надо сравнить 2 числа, и запомнить результат сравнения
Неизвестный
24.08.2008, 14:51
общий
и еще если не затруднит, такие операции sqrt и sqr действуют в Си, вообще пишу на Паскале, но в силу обстаятельств надо на Си кое-что написать так разбираюсь с ним
Неизвестный
24.08.2008, 14:53
общий
это ответ
Здравствуйте, Tribak!
Цитирую:
"В Стандарте С89 определено пять фундаментальных типов данных:
char - символьные данные;
int - целые;
float - с плавающей точкой;
double - двойной точности;
void - без значения."
таким образом в стандартном Си нету переменной bool, которая появляется в дальнейших его расширениях.
Вместо него можно использовать тип char, занимающий один байт памяти. Сравнение при этом идет также, как и с обычной булевой переменной:
char a;
if (a) {}...
При этом значение логического выражение будет равно false только если переменная равна нулю. Во всех остальных случаях результатом будет true
Неизвестный
24.08.2008, 16:11
общий
#include <stdio.h>
#include <math.h>

int main() {
float f = 4;
printf("%f %f\n", sqrt(f), pow(f, 2));
return 0;
}
Форма ответа