C++-------变量

变量提供一个具名的,可供程序操作的存储空间。

1.变量的定义

  形式:类型说明符  变量名(可以跟多个变量,变量之间用逗号分隔);

  可以定义时给每个变量赋初始值。

  当一个变量定义以后,就可以被立即使用,因此可以使用前面定义的变量,给后面定义的变量使用。

  综上的说明,看例子

  例1: int a,b,c;

  例2: int a=1,b=a+1,c=3,d,e=4;

  

2.初始值

  当定义一个变量(对象),给定一个值,我们可以说这个变量(对象)被初始化(initialized)了。

  初始化一个变量或对象可以使用任意复杂的表达式。

  初始化与赋值在C++中是两个完全不同的操作,注意二者的区别。

  列表初始化是C++11新标准的一部分,是用一对花括号来初始化变量。

  在内置类型变量使用列表初始化时,且初始值存在丢失风险时,则编译器将报错。

  默认初始化:当定义一个变量没有指定初始值,则变量被默认初始化,此时变量被赋予了“默认值”。

  默认值是什么,有变量的类型和位置决定。

  定义于任何函数体之外的内置类型的变量被初始化为0;

  定义于任何函数体之内的内置类型的变量将不被初始化,一个未被初始化的内置类型的变量的值是未定义的,试图拷贝或以其它形式访问该值将引发错误。

  类的对象的初始化,将在后面说明。

  综上的说明,看例子。

  例1:

    int a = 0;

    int a={0};

    int a{0};

    int a(0);

    -----long double ld = 3.1415926536;

    int a{ld};  //  报错

    int a(ld),b=ld;  // 正确

3.变量的声明和定义

  为了支持分离式编译,C++语言将声明和定于区分开。

  声明(declaration)使得名字为程序所知,一个文件如果想使用别处定义的名字则必须包含对那个名字的声明。

  定义负责创建与名字关联的实体。

  声明在形式上与定义类似,类型和名字,除此之外,定义还申请了存储空间,也可能为变量赋初始值。

  如果变量的前面加关键字extern,则显式的说明是一个声明,如果又赋了初始值,则抵消了extern的作用。

  综上的说明,看例子。

  例1:

    extern int i;      //声明

    int j;   //声明并定义

    extern int m=0;  //定义

4.标识符,自行领会。

5.作用域,自行领会。

说明:读书笔记,C++ Primer   第五版  第二章 

做一个简单的人,踏实而务实。不沉溺幻想。不庸人自扰

原文地址:https://www.cnblogs.com/wds128/p/5260356.html