2、C++
2.2定义变量
2.2.1命名规则
赋予变量的名称叫做标识符,或者更方便地称之为变量名。变量名可用字母(包括大小写),数字,以及下划线,其他字符不允许。以下划线或者字母开头。在Visual C++2010字符最长可达2048个字符。在C++中经常采用这样一个约定,就是把以大写字母开头的名称用于类名,而把以小写字母开头的名称用于变量。
C++中的关键字
C++中有一些保留字,又被称为关键字;修改显示颜色:Tools->Options->Environment/Fonts and colors。
2.2.2 声明变量
变量声明同时也是变量定义,即介绍了变量名,又将它与适当容量的一段内存联系起来。
在把一个名称以及有关这个名称用途的信息引入程序时,要使用"声明"这个术语,术语"定义"涉及的是分配给这个名称的计算机内存。就变量来说,二者同时执行。C++良好的习惯是接近于首次使用的变量的位置声明他们。
2.2.3 变量的初始值
将初始值赋给变量的变量声明称为初始化。
在C++中,为变量写入初始值还有一种表示法,称作函数表示法。是把数值写入变量名后面的圆括号内。
eg:int value(5);int value = 5。
2.3 基本数据类型
2.3.1 基本类型分为三类:存储整数的类型(short(2个字节) int(4个字节) long(4个字节;定义的数字后面加上L或者l;默认只是数字表示int型)、long long(8个字节数字后面写LL或者ll))、存储非整数的类型(也称为浮点型)、指定空的值集或者不指定任何类型的void类型。
2.3.2 字符数据类型
与char类型不同,wchar_t类型的叫法源于它是宽字符类型,存储两个字节的字符代码,值域为0-65535.eg:wchar_t = L'Z';定义一个变量letter,并利用字母Z的16位代码对它进行初始化。字符常量’Z‘前面的字母L告诉编译器这个是一个16位字符代码值,wchar_t变量存储Unicode代码值。也可以用wchar_t letter(L'Z');也可以使用十六进制常量初始化整型变量。wchar_t letter(0x5A);
2.3.3 整型修饰符
定义无符号类型是后面加上u或者U
eg:unsigned long mileage = 5UL;
2.3.4布尔类型
布尔变量也称为逻辑变量,类型bool被认为是整数类型。其值为true和false;eg:bool colorIsred = true;
2.3.5 浮点类型
浮点常量必须包含一个小数点或者一个指数或者二者都有,如果不是,则认为是一个整数。
double占8个字节,float占4个字节并且在定义时数字后面要加f而double不用加,默认就是。
还有long double 类型。
2.3.6 字面值
在C++中,所有类型的常数都称为字面值。字面值是特定类型的值。
2.3.7 定义数据类型的同义词
typedef关键字能够使您为现有的类型定义自己的类型名称。
2.3.8 具有特定值集的变量
有时需要一些具有一个有限的可能值集的变量,标签(label)可以有效地引用这些值,在C++中有一种处理这种情况的工具,称之为枚举。eg:
enum Week{Mon,Tue,Wed,Thurs,Fri,Sta,Sun} thisWeek;这个语句声明了名称为Week的枚举类型和变量thisWeek,这个变量是枚举类型Week的一个实例,它只能采用大括号之间指定的常量值。大括号之间列出的符号名称为枚举器。实际上,日期的每一个名称都被自动定义为表示一个固定的整数值,如Mon=0,Tue=1。。。
可以把一个枚举常量作为变量thisWeek的值赋给它,eg:thisWeek= Thurs;
如果打算不从零开始则可以有enum Week{Mon=1,Tue,Wed,Thurs,Fri,Sta,Sun} thisWeek;那么其值范围为1-7.枚举器甚至不需要有唯一的值,如enum Week{Mon=2,Tue=2,Wed,Thurs,Fri,Sta,Sun} thisWeek;由于thisWeek的类型是int,故它占4个字节,不允许用函数表示法初始化枚举器。
2、C++的更多相关文章
- js-静态、原型、实例属性
本篇来说一下js中的属性: 1.静态属性 2.原型属性 3.实例属性 静态属性: function klass(){} var obj=new klass(); klass.count=0; klas ...
- 【.net 深呼吸】细说CodeDom(2):表达式、语句
在上一篇文章中,老周厚着脸皮给大伙介绍了代码文档的基本结构,以及一些代码对象与CodeDom类型的对应关系. 在评论中老周看到有朋友提到了 Emit,那老周就顺便提一下.严格上说,Emit并不是针对代 ...
- javascript中的Array对象 —— 数组的合并、转换、迭代、排序、堆栈
Array 是javascript中经常用到的数据类型.javascript 的数组其他语言中数组的最大的区别是其每个数组项都可以保存任何类型的数据.本文主要讨论javascript中数组的声明.转换 ...
- IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法
直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...
- jQuery UI resizable使用注意事项、实时等比例拉伸及你不知道的技巧
这篇文章总结的是我在使用resizable插件的过程中,遇到的问题及变通应用的奇思妙想. 一.resizable使用注意事项 以下是我在jsfiddle上写的测试demo:http://jsfiddl ...
- 初识Hadoop、Hive
2016.10.13 20:28 很久没有写随笔了,自打小宝出生后就没有写过新的文章.数次来到博客园,想开始新的学习历程,总是被各种琐事中断.一方面确实是最近的项目工作比较忙,各个集群频繁地上线加多版 ...
- boosting、adaboost
1.boosting Boosting方法是一种用来提高弱分类算法准确度的方法,这种方法通过构造一个预测函数系列,然后以一定的方式将他们组合成一个预测函数.他是一种框架算法,主要是通过对样本集的操作获 ...
- 《Web 前端面试指南》1、JavaScript 闭包深入浅出
闭包是什么? 闭包是内部函数可以访问外部函数的变量.它可以访问三个作用域:首先可以访问自己的作用域(也就是定义在大括号内的变量),它也能访问外部函数的变量,和它能访问全局变量. 内部函数不仅可以访问外 ...
- .Net Core MVC 网站开发(Ninesky) 2.4、添加栏目与异步方法
在2.3中完成依赖注入后,这次主要实现栏目的添加功能.按照前面思路栏目有三种类型,常规栏目即可以添加子栏目也可以选择是否添加内容,内容又可以分文章或其他类型,所以还要添加一个模块功能.这次主要实现栏目 ...
- JS调用Android、Ios原生控件
在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...
随机推荐
- 网际协议版本4(IPv4)
IP是一种不可靠的无连接数据报协议-一种尽最大努力交付的服务,尽最大努力一词的意思是IP分组可能会损坏,丢失,失序或延迟到达,并且可能给网络带来拥塞. 网络层的分组称为数据报.是一个可变长度的分组.由 ...
- jpa summary
JPA Prepared by: John Tan March, Contents what Where to use JPA Difference between JPA and Mybatis 1 ...
- UI5-文档-2-开发环境
这一部分将指导您安装.配置和设置SAPUI5开发环境的最常见和推荐用例. 请注意:您可以在不同的平台上使用SAPUI5.各自平台的许可和维护条件也适用于SAPUI5.例如,如果在SAP云平台上使用SA ...
- ubuntu16.04 dpkg强制安装 teamviewer
dpkg遇到安装有依赖,而依赖的包有无法安装的时候,可以试试强制安装: .90154_amd64.deb 虽然报错,但是安装后还是可以使用. 如果使用: .90154_amd64.deb 提示下面错误 ...
- 系统批量运维管理器pexpect的使用
# pip install pexpect 或 # easy_install pexpect 1 #!/usr/bin/env python 2 import pexpect 3 child = pe ...
- <U+FEFF> character showing up in files. How to remove them?
You can easily remove them using vim, here are the steps: 1) In your terminal, open the file using v ...
- Jena TDB Assembler
TDB Assembler Assemblers (装配器) 是Jena中用于描述将要构建的对象(通常是模型和数据集 models & datasets)的一种通用机制.例如, Fuseki ...
- TEXT 5 Stuff of dreams
TEXT 5 Stuff of dreams 梦想的精粹 Feb 16th 2006 | CORK AND LONDON From The Economist print edition (译者注:本 ...
- 进化的Spark, 从DataFrame说起
进化的Spark, 从DataFrame说起:http://www.tuicool.com/articles/IzeY7zM
- Spring RabbitMQ 延迟队列
一.说明 在实际业务场景中可能会用到延时消息发送,例如异步回调失败时的重发机制. RabbitMQ本身不具有延时消息队列的功能,但是可以通过rabbitmq-delayed-message-excha ...