BOOL变量 , float变量, 指针变量和整型变量与“零值”比较

BOOL变量 , float变量,  指针变量和整型变量与“零值”比较

例1:写出 BOOL flag 与“零值”比较的 if  语句。

答案:

if ( flag )

if ( !flag )

如下写法均属不良风格:

i f ( f l ag == TRUE)

i f ( f l ag == 1 )

i f ( f l ag == FALSE)

i f ( f l ag == 0)

例2:请写出 float x  与“零值”比较的 if  语句。

答案:

const float EPSINON = 0.00001;

if ((x >= - EPSINON) && (x <= EPSINON))

不可将浮点变量用“ == ”或“!= ”与数字0比较,应该设法转化成“ >= ”或“ <=”此

类形式。

如下是错误的写法:

i f ( x == 0. 0)

i f ( x ! = 0. 0)

例3:请写出 char *p  与“零值”比较的 if  语句。

答案:

if( p == NULL)

if( p ! = NULL)

如下写法均属不良风格:

i f ( p == 0)

i f ( p ! = 0)

i f ( p)

i f (!p)

例4:请写出int x  与“零值”比较的 if  语句。

答案:

i f ( x == 0)

i f ( x != 0)

应当将整型变量用“ == ”或“!= = ”直接与 0比较。

不可模仿布尔变量的风格而写成:

i f (x)   / /会让人误解 val ue是布尔变量

i f (!x)

时间: 2024-08-03 16:26:51

BOOL变量 , float变量, 指针变量和整型变量与“零值”比较的相关文章

bool、int、float、指针变量与“零值”比较的if语句

if语句是C++/C语言中最简单.最常用的语句,然而很多程序员用隐含错误的方式写if语句.本节以"与零值比较"为例,展开讨论. 这里是"零值"而不是"0" 4.3.1布尔变量与零值比较 [规则4-3-1]不可将布尔变量直接与TRUE.FALSE或者1.0进行比较. 根据布尔类型的语义,零值为"假"(记为FALSE),任何非零值都是"真"(记为TRUE).TRUE的值究竟是什么并没有统一的标准.例如Visua

零值比较--BOOL,int,float,指针变量与零值比

最近好多新东西需要学,好久没有写点什么了,忽然发现一个基础的基础,借来分析一下,共享-(PS:这不是我最近学的重点) 这是一个C++最基础.每个程序员都会碰到的问题.若只在大学里看过几本基础的编程入门书,看见这道题可能会觉得奇怪,不就是和0 比较吗,直接拿出来比就是了,其实不是的(PS:高手可以无视). 首先给个提示:题目中要求的是零值比较,而非与0进行比较,在C++里"零值"的范围可就大了,可以是0.0.0.FALSE或者"空指针". //------------

&lt;转&gt;零值比较--BOOL,int,float,指针变量与零值比较的if语句

下面这个是我在一本C语言书上看到的题目 写出float类型的变量i和零值比较的语句: if((x >= -0.00001)&& (x <= 0.00001) ) 不可以将浮点变量用"=="或"!="与数字进行比较,应该设法转化成">="或者"<="之类的形式. 这是程序员面试的一道常见题,也是个C++基础问题.若只在大学里看过几本基础的编程入门书,看见这道题可能会觉得奇怪,不就是和0比较

分别给出BOOL,int,float,指针变量 与“零值”比较的 if 语句(假设变量名为var)

BOOL型变量:if(!var) int型变量: if(var==0) float型变量: const float EPSINON = 0.00001; if ((x >= - EPSINON) && (x <= EPSINON) 指针变量: if(var==NULL)

bool、int、float、指针变量与&quot;零值&quot;比较的if语句

bool型数据:if ( flag ) { A;} else { B;} int型数据:   if ( 0 == flag ) { A;} else { B;} 指针变量:   if (NULL == flag) { A; } else {B;} float型数据: #define NUM (0.000001)  if ((flag >= -NUM) && (flag <= NUM)) { A; } else { B;} 原文地址:https://www.cnblogs.com

&lt;22&gt;【掌握】指针变量概念及定义方法+【理解】两变量值交换的方法+【掌握】总结*使用场合

[掌握]指针变量概念及定义方法 1.指针变量 用来存放地址的变量,就是指针变量 2.指针? 就是地址,地址是个常量 3.指针变量的定义 数据类型 *指针变量名; int *p; //定义了一个指针变量,变量名是p //int表示,p只能存放一个int类型的变量的地址 char *p1; //定义了一个指针变量,变量名是p1 //p1只能存放一个char类型数变量的地址 int num=10; char *p = &num; //警告 4.指针变量定义的注意事项 1)“*” 必须得有,如果没有就相

指向结构体变量的指针变量

指向结构体变量的指针变量的定义形式与一般指针变量的定义形式相同,只是将其指向类型定义为结构体类型即可.例如: struct person { char name[20]; char sex; int age; float height; }; struct person *p; 则指针变量p,它可以指向struct person类型的结构体变量. 将一个指针变量指向一个结构体变量后,可以利用指向该结构体的的指针变量引用成员,如: (* 指针变量名).成员名 如(*p).age; 以上形式也常写成

C语言---指针变量详解1

数据在内存中的地址也称为指针,如果一个变量存储了一份数据的指针,我们就称它为指针变量.在C语言中,允许用一个变量来存放指针,这种变量称为指针变量.指针变量的值就是某份数据的地址,这样的一份数据可以是数组.字符串.函数,也可以是另外的一个普通变量或指针变量. 现在假设有一个 char 类型的变量 c,它存储了字符 'K'(ASCII码为十进制数 75),并占用了地址为 0X11A 的内存(地址通常用十六进制表示).另外有一个指针变量 p,它的值为 0X11A,正好等于变量 c 的地址,这种情况我们

黑马程序员---C基础9【字符串的输入输出】【字符串相关函数】【指针】【指针变量初始】【二级指针】

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- [字符串的输入输出] 1.字符串输出: %s-------从给定的地址开始输出字符直到遇到\0停止: printf("%s\n",&a[3]);  printf("%s\n",a); char a[]="hellowo\0rd!"; 2.字符串输入: 从键盘上接收一个字符串,保存在以a为首地址的字符数组中 scanf("%s&