美文网首页C++
变量和基本类型(一)

变量和基本类型(一)

作者: Gorkr | 来源:发表于2018-10-12 16:49 被阅读3次

1-基本内置类型

  • char类型, 应该确保可以存放机器基本字符集中任意字符对应的数字值。
  • floatdouble分别有7和16个有效位(long double根据硬件,和需求不同,精度不同)。
  • 字符型分为三种:char,signed char,unsigned char

选择类型的经验:
1. 明确数值不为负,选择无符号类型。
2. 使用int不使用short。
3. 浮点运算用double,不用float(计算代价相差无几)。

类型转换

bool b = 42;  //b为true
int i = b;   //i的值为1

unsigned char c = -1;  //假设char占8bit,c的值为225
    - 赋值给无符号类型一个超出它表示范围的值时,  
      结果时初始值对无符号类型表示数值总数取模的余数。 -1%256=255
    - 负数b对a取摸,在b上加a,知道b变为正数,再用这个正数对a取摸。
    - 取摸方法: 1. 求整数商 c=a/b 2.得余数r=a-c*b   
    - ps: c++中取摸同取余, python中是真正的取摸

一个算数表达式中既有无符号数又有int时,int值转换为无符号数。把负数抓换为无符号数结果等于这个负数加上无符号数的模。切勿混用带符号类型和有符号类型。

字面值常量

0开头的整数代表八进制,0x0X开头代表十六进制。八进制和十六进制字面值可以使带符号的。short类型没有对应字面值。默认的浮点类型字面值是double

字符和字符串 如果两个相邻的字符串字面值仅由空格,缩进和换行符分割,他们实际是一个整体。

转义序列 形式:\x后面紧跟一个或者多个十六进制数字,\后紧跟1-3个八进制数字。无十进制转义序列。

使用前缀或者后缀,可以改变字面值的默认类型(p37 表2.2)。nullptr是指针字面值。


2-变量

std::string代表string是在命名空间std中定义的。

在C++中,初始化和赋值是两个概念。初始化的含义是创建变量时赋予其一个初始值,而赋值的含义是把对象的当前值擦除,以一个新值代替。

  • 列表初始化 初始值存在丢失风险是,编译器报错
    int a = {0};
    int a{0};
  • 一般初始化?
    int a(0); int a = 0;
  • 默认初始化 定义于任何函数之外的变量被初始化为0。定义于函数内部的内置类型将不被初始化。

分离式编译

C++将声明和定义区分开来。声明使名字为程序所知,一个文件如果想使用别处定义的名字则必须包含对呢个名字的生命。定义负责创建与名字相关联的实体。

如果想声明一个变量而非定义它,在变量名前面添加关键字extern,而且不要显式初始化。

    extern int i; //声明而非定义
    int j;        //声明且定义, 默认初始化为0

如果多个文件中包含同一个变量,必须将声明和定义分离。声明可以多次,但定义必须只能有一次。

标识符规范

用户自定义的标识符中不能出现连续两个下划线的情况,也不能以下划线紧接着大写字母开头。定义在函数体外的标识符不能以下划线开头。

  • 变量名一般用小写字母, 自定义类名一般以大写字母开头。

名字的作用域

C++大多数作用域以花括号分隔。名字的作用域始于声明的语句,名字所在作用域末端结束。

相关文章

  • JS变量类型,存储方式以及特点

    1.JS变量类型 JS变量类型分为基本类型和引用类型 基本类型:基本类型有Undefined,String,Num...

  • 2018-05-30 变量 typeof() 和instance

    1:变量的类型 变量分为基本类型和引用类型,5种基本数据类型和1种引用类型 基本数据类型: String Bool...

  • JS之变量、作用域和内存

    变量及作用域 1、基本类型和引用类型的值ECMAScript 变量:基本类型值和引用类型值。将一个值赋给变量时,解...

  • c++ primer

    2 变量和基本类型。 2.1 变量和基本类型。 c++定义了一套 算术类型和空类型,算术类型主要是整型(包括boo...

  • JS变量,作用域,内存问题

    基本类型和引用类型 js中变量类型分为两大类。基本类型和引用类型。基本类型指值直接保存在变量本地的类型。引用类型变...

  • 第四章小结-作用域链

    1.变量分为基本类型和引用类型。基本类型变量有数字,字符串,布尔值和undefined。引用类型就是对象和函数。 ...

  • Java 变量和基本数据类型

    变量和基本数据类型 变量 ​ 保存数据的存储单位(容器) ​ 声明变量的语法: 类型 变量名称 基本数据类...

  • 变量和基本类型(一)

    1-基本内置类型 char类型, 应该确保可以存放机器基本字符集中任意字符对应的数字值。 float和double...

  • Java-入门-数组

    一、数组 定义一个数组类型的变量,使用数组类型“类型[]”,例如,int[]。和单个基本类型变量不同,数组变量初始...

  • 数据类型

    Java中,变量分为两种:基本类型的变量和引用类型的变量。 基本数据类型(基本数据类型是CPU可以直接进行运算的类...

网友评论

    本文标题:变量和基本类型(一)

    本文链接:https://www.haomeiwen.com/subject/yiugaftx.html