当前位置: 首页 > news >正文

网站建设公司销售福州百度代理

网站建设公司销售,福州百度代理,做汽车导航仪在什么网站找客户,国内永久免费crm系统网站推荐大全文章目录 一、C中的布尔类型 二、C中的三目运算符 三、C中的引用 四、总结 一、C中的布尔类型 C在C语言的基本类型系统之上增加了boolC中的bool可取的值只有true和 false理论上bool只占用一个字节C编译器会将非0值转换为true ,0值转换为false 注意: true代表真…

文章目录

一、C++中的布尔类型

二、C++中的三目运算符

三、C++中的引用

四、总结


一、C++中的布尔类型

  • C++在C语言的基本类型系统之上增加了bool
  • C++中的bool可取的值只有truefalse
  • 理论上bool只占用一个字节
  • C++编译器会将非0值转换为true ,0值转换为false

注意:

true代表真值,编译器内部用1来表示

false代表非真值,编译器内部用0来表示

         下面看一下这段代码,加深一下对bool类型的理解。

#include <stdio.h>int main(int argc, char *argv[])
{bool b = 0;printf("b = %d\n", b);b++;printf("b = %d\n", b);b = b - 3;printf("b = %d\n", b);return 0;
}

        下面为输出结果,可以看到0值输出为0,而非0值输出为1,和上面介绍的一样。

         接下来再上一段代码,再次加深对布尔类型的理解。

#include <stdio.h>int main(int argc, char *argv[])
{bool b = false;int a = b;printf("sizeof(b) = %d\n", sizeof(b));printf("b = %d, a = %d\n", b, a);b = 3;a = b;printf("b = %d, a = %d\n", b, a);b = -5;a = b;printf("b = %d, a = %d\n", b, a);a = 10;b = a;printf("a = %d, b = %d\n", a, b);a = 0;b = a;printf("a = %d, b = %d\n", a, b);return 0;
}

        下面为输出结果,可以看到bool类型只占用一个字节,且输出符合上面讲的理论。 

 布尔类型是C++中的基本数据类型

  • 可以定义bool类型的全局变量
  • 可以定义bool类型的常量
  • 可以定义bool类型的指针
  • 可以定义bool类型的数组
  • ......

二、C++中的三目运算符

  • C++对三目运算符进行了升级
  • C语言的三目运算符返回的是变量值
    • 不能作为左值使用
  • C++中的三目运算符可直接返回变量本身
    • 既可作为右值使用,又可作为左值使用

注意:三目运算符可能返回的值中如果有一个是常量值,则不能作为左值使用。

         通过下面这个程序来说明一下C++对于三目运算符的升级。

#include <stdio.h>int main(int argc, char *argv[])
{int a = 1;int b = 2;(a < b ? a : b) = 3;printf("a = %d, b = %d\n", a, b);return 0;
}

        下面为输出结果,可以看到上面的程序在C语言的编译条件下编译不通过,而在C++的编译条件下编译通过, 这说明在(a < b ? a : b)代码中,因为a < b ,所以输出a的值,然后把3赋值给a。

  • C++对三目运算符做了什么?
    • 当三目运算符的可能返回都是变量时返回的是变量引用
    • 当三目运算符的可能返回中有常量时返回的是值

        从C++编译器输出结果也可知,第一种写法编译可以通过,第二种写法编译不通过,如下图所示。 

三、C++中的引用

  • 变量名回顾
    • 变量是一段实际连续存储空间的别名
    • 程序中通过变量来申请并命名存储空间
    • 通过变量的名字可以使用存储空间 
变量命名及对应地址
  • 在C++中新增加了引用的概念
    • 引用可以看作一个已定义变量的别名
    • 引用的语法: Type& name = var;

注意:普通引用在定义时必须同类型的变量进行初始化

        以下面的程序为例,说明一下引用。 

#include <stdio.h>int main(int argc, char *argv[])
{int a = 4;int& b = a;    //b为a的别名printf("a = %d, b = %d\n", a, b);    //操作b就是操作areturn 0;
}

        下面为输出结果,可以看到a和b均为4,这就很好的说明了引用的概念。       

         为了进一步理解引用,下面对上述程序进行了修改。

#include <stdio.h>int main(int argc, char *argv[])
{int a = 4;int& b = a;b = 5;printf("a = %d\n", a);printf("b = %d\n", b);printf("&a = %p\n", &a);printf("&b = %p\n", &b);return 0;
}

         下面为输出结果,因为我们通过a变量的别名b对a变量进行了修改,操作b就相当于操作a,C++中可以对同一段连续的内存起任意多的别名 ,所以标识符a和b代表内存里面同一段连续的空间。

         如果我们把 int& b = a; 改成 float& b = a; 或者改成 float& b; 或者改成  float& b = 1,则编译器分别报如下错误,这说明C++编译器对数据类型要求是非常严格的。

四、总结

  • bool类型是C++新增加的基础类型
  • bool类型的值只能是truefalse
  • C++中的三目运算符可作为左值使用
  • C++中的引用可以看作变量的别名来使用
  • 三目运算符的可能返回都是变量时返回的是引用 

http://www.ritt.cn/news/1127.html

相关文章:

  • 织梦系统如何做网站深圳seo关键词优化外包公司
  • 网站建设的可用性网络营销学什么
  • 网站开发朋友圈广告中国最好的营销策划公司
  • 网站如何上传百度帐号登录个人中心
  • 厦门商务网站建设在百度怎么免费发布广告
  • 商业网站用什么语言做企业网站建设制作
  • 查找北京建设投标项目网站网店运营在哪里学比较好些
  • 山东建设委员会网站百度关键词搜索排名统计
  • 自适应导航网站模板广州疫情最新消息今天封城了
  • 学网站开发 优帮云房地产市场现状分析
  • 上海快速建站提供商百度竞价专员
  • 沧州网站制作费用seo优化案例
  • 做网站的知识网页快照
  • 单位网站设计制作广州seo优化电话
  • 做境外网站自己建网站要花多少钱
  • 微信网站搭建公司搜索优化的培训免费咨询
  • 网站后端架构如何做seo公司发展前景
  • 哪个网站查公司信息比较准网店seo关键词
  • wordpress如何更域名seo搜索优化是什么
  • js实现收藏网站功能电子商务网站推广
  • 网站建设模板制作是什么意思app营销十大成功案例
  • 网站设计与网页配色网站推广代理
  • 廉江网站制作软文营销怎么写
  • 用记事本做网站怎么让字体靠右郑州seo管理
  • mvc做的游戏网站安卓优化大师手机版下载
  • 咨询公司管理制度seo如何优化
  • 网站建设小程序南宁北京最新疫情情况
  • 网站开发网站设计的标准去除痘痘怎么有效果
  • b2c网站模块宁德市政府
  • html5 网站建设百度快照优化推广