C++ 基础学习教程 第二章 变量(1)

来源:互联网 发布:淘宝联盟软件 编辑:程序博客网 时间:2024/05/21 02:36

第一节 变量基础知识

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


1 定义变量

1.1 变量定义形式:
变量定义的基本形式是:首先是类型说明符,随后紧跟有一个或多个变量名组成的列表,其中变量名以逗号分隔,最后以分号结束。(类型说明符:即说明变量类型,变量类型决定了变量的存储空间,能存储的值的范围,以及变量能参与的运算。类型说明符由基本数据类型(char, int, float, double…)和类型修饰符(*,&…)构成。)

1.2 变量定义与类型说明符、基本数据类型、声明符、类型修饰符四者关系:
变量定义 = 类型说明符 + 变量名;
变量定义 = 基本数据类型 + 声明符;
声明符 = 类型修饰符 + 变量名;


2 变量初始化

2.1 初始化含义:
在创建变量(定义而非声明)时赋予其一个初始值。

2.2 初始化方式:
以将一个名为i的int变量初始化为0为例。
直接初始化:int i(0);
拷贝初始化:int i = 0;
列表初始化:int i{0}; int i{0};(这种初始化形式有一个重要特点:如果我们使用列表初始化且初始值存在丢失信息的风险,则编译器将报错)。

默认初始化:如果定义变量时没有指定初值,则变量被默认初始化。默认值到底是什么由变量类型决定,同时定义变量的位置也会对此有影响。定义与任何函数体之外的变量将被初始值为0,定义在函数体内部的内置类型变量将不被初始化。一个未被初始化的内置类型变量的值是未定义的,如果试图拷贝或以其他形式访问此类型将引发错误。

2.2 初始化与赋值区别:
赋值是把变量的当前值擦除,用新的值替代。而初始化是在创建变量时赋予其一个初始值


3 变量定义与声明
3.1 声明和定义的区别:
声明:使得名字为程序所知,即规定了变量的类型和名字。
定义:负责创建与名字关联的实体,即申请存储空间。

3.2 如何声明一个变量而非定义它:
在变量名前添加关键字extern。
变量能且只能被定义一次,但是可以被多次声明。

3.3 声明的重要性:
为了允许把程序拆分成多个逻辑部分来编写,C++语言支持分离式编译机制,该机制允许将程序分割成若干文件,每个文件可被独立编译。如果要在多个文件中使用同一个变量,就必须将声明和定义分离。此时,变量的定义必须出现在且只能出现出一个文件中,而其他用到该变量的文件必须对其进行声明,却绝对不能重复定义。


4 变量名

4.1 标识符概述
即组成名字的字符序列。由字母、数字、下画线组成,其中必须以字母或下画线开头,长度没有限制,但对大小写字母敏感。
C++语言保留了一些名字供语言本身使用,这些名字不能被用作标识符。
用户自定义的标识符不能连续出现两个下画线,也不能以下画线紧连大写字母开头。

4.2 变量命名规则
变量命名首先需要准从标识符限定条件,其次名字要能体现其真实含义。具体的命名规则我在另一篇文章已经细细的讲解过了,感兴趣的同学可以看看程序编程规范。


最后,感谢您的阅读。