C++笔记--类型和声明
- 布尔量
- Eg: bool b1=a==b;//这个例子中,=是赋值,==是判断是否相等,所以先是判断是否相等,a如果等于b,b1的值就是true,否则就是false了
- Bool经常被用作检查某些条件是否成立的函数的结果类型,
- Eg:bool greater(int a,int b) {return a>b}
- Bool可以和整数进行隐式的转换(任何非零的整数都是true,零为false)
- eg:bool a=ture;
- bool b=true;
- bool x=a+b;//因为a+b=2 为true,所以x也是tru
- Bool y=a|b;//a/b=1,所以y为true
- 字符型
- 一个char类型包含8位二进制位数,可以保存256中不同的值
- 整数型
- 浮点型
- 大
- sizeof(char)= 1
- sizeof(short)= 2
- sizeof(float)= 2
- sizeof(int)= 4
- sizeof(double)= 8
- sizeof(void*)= 4
- sizeof(long)= 4
- sizeof(LONGLONG) = 8
- sizeof(bool)=
- sizeof(wchar_t) = 2
- Void
- 用于刻画一个没有返回值得函数 void f();
- 用作指向不明类型的对象的指针的基础类型 ,这个指针允许被强制转换为任意类型的指针 void * pv;
- 一个特殊的例子:
- Char类型的指针:
- char c='V';
- cout<<c<<endl;
- cout<<&c<<endl;//char类型的数据,输出地址是不能用&符号的
- cout<<(void *)c<<endl;//可以利用(void*)指针进行输出,当然也是可以强制转换成别的类型的指针
- cout<<(double *)c<<endl
- return 0;
- 枚举
- 声明
- 除了函数和命名空间外,其他声明都应该以分号结束
- 声明的名字
- 名字最好取得比较规范,让人容易看懂。Eg:current_token
- 名字的作用域:
- 一般是从名字声明开始的地方开始到这个作用块结束的地方成为名字的作用域
- 如果出现全局变量和局部变量都是一样的名字的话,在局部的地方会遮蔽掉全局变量,如果还想要调用全局变量的话,可以通过作用域解析运算符::进行调用。
- 声明的初始化
- 如果没有初始化:全局的,名字空间的,局部静态的对象会初始化为对应的0
- 但是局部对象和动态对象不会初始化;
- 例如:
- Int main(){
- Int x;//这里就是动态的变量,没有进行初始
- }
- Typedef
- 可以将一个名字变为另一个名字:typedef unsign char uchar;//将名字较长的unsign char变为了uchar类型
C++笔记--类型和声明的更多相关文章
- [C++学习历程]基础部分 C++中的类型和声明
前面搭起了C++的VS环境,可以在VS中编写C++代码了,也运行了最简单的一个程序Helloworld.那么我们该怎么才能写出功能强大的程序,怎样才能随心所欲的应用呢,那就需要重新回头来,从C++基础 ...
- leanote 信息栏显示笔记本和笔记类型
本文解决如下两个问题: 1. 在列表视图下使用搜索时,不知道搜出来的笔记属于哪个笔记本.(摘要视图下是有显示的) 2. 增加显示笔记类型(markdown 或 富文本) 修改resources\app ...
- 复合类型的声明——是int *p还是int* p
我们先来看一条基本类型的声明语句:int a, b, ... 即一条声明语句由一个数据类型(int)和紧随其后的一个变量名列表(a, b, ...)组成 更通用的描述是:一个基本数据类型和紧随其后的一 ...
- mybatis进行mapper.xml测试的时候发生"必须为元素类型 “mapper” 声明属性 “namespace”
1.Caused by Caused by: org.xml.sax.SAXParseException; lineNumber: 7; columnNumber: 45; 必须为元素类型 " ...
- 标C编程笔记day05 函数声明、文件读写、联合类型、枚举类型
函数声明: 1.隐式声明:在没有声明的情况下,系统可依据參数类型推断去调用函数(有可能出错) 2.显式声明:声明在被调用之前.如:double add(double,double); ...
- The C++ Programming Language 学习笔记 第四章 类型和声明
1.关于main 函数中的 return 0 C99标准中,main 函数的返回值类型必须是 int ,这样返回值才能传递给程序的激活者(如操作系统).如果 main 函数的最后没有写 return ...
- C++程序设计(第4版)读书笔记_类型与声明
字符类型 #include <iostream> using namespace std; int main() { cout << << endl; cout & ...
- TypeScript 入门自学笔记 — 类型断言(二)
码文不易,转载请带上本文链接,感谢~ https://www.cnblogs.com/echoyya/p/14558034.html 目录 码文不易,转载请带上本文链接,感谢~ https://www ...
- C语言学习笔记--类型定义&联合
一.类型定义 C语言自定义数据类型 (typedef) C语言提供一个叫做typedef的功能来声明一个已有的数据类型的新名字. typedef int Length; 使得Length成为int类型 ...
随机推荐
- 在Windows 7上安装ACE 6.1.0
主机环境 操作系统:Windows 7 专业版准备ACE 用浏览器打开http://download.dre.vanderbilt.edu/,下载ACE-6.1.0和ACE-html-6. ...
- bzoj4513 储能表
求 $\sum\limits_{i=0}^{n-1} \sum\limits_{j=0}^{m-1} max((x \space xor \space j) - k,0)$ ,膜 $p$ $n,m \ ...
- 转载:jquery插件实现图片延迟加载(lazyload.js)
转载: http://www.cnblogs.com/tinyphp/archive/2013/04/09/3009385.html
- Makefile生成
安装:sudo yum install automake使用: 1 运行autoscan生成两个文件:autoscan.log和configure.scan.将configure.scan重命名为co ...
- winrm service
今天看脚本忽然发现一个服务,叫winRM服务,这是个PowerShell的远程管理.开启它可以很大程度的方便用PowerShell操控! 下面是我找到的一些资料: 在Linux中,我们可以使用安全的S ...
- 如果有多个集合的迭代处理情况【使用MAP】
在SQL开发过程中,动态构建In集合条件查询是比较常见的用法,在Mybatis中提供了foreach功能,该功能比较强大,它允许你指定一个集合,声明集合项和索引变量,它们可以用在元素体内.它也允许你指 ...
- HDU2579(bfs迷宫)
Dating with girls(2) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- JDK 8 - JVM 对类的初始化探讨
在<深入理解 Java 虚拟机>(第二版,周志明著)中,作者介绍了 JVM 必须初始化类(或接口)的五种情况,但是是针对 JDK 7 而言的. 那么,在 JDK 8 中,这几种情况有没有变 ...
- 机器学习:PCA(使用梯度上升法求解数据主成分 Ⅰ )
一.目标函数的梯度求解公式 PCA 降维的具体实现,转变为: 方案:梯度上升法优化效用函数,找到其最大值时对应的主成分 w : 效用函数中,向量 w 是变量: 在最终要求取降维后的数据集时,w 是参数 ...
- 杂项:VS调试技巧之附加进程
ylbtech-杂项:VS调试技巧之附加进程 1. 摘录返回顶部 1. 用过VS一段时间的程序员们相信都有过这种调试经历:每次按下F5进行断点调试时,都要等待好长时间:先让解决方式编译通过,然后启动V ...