C++变量

本文围绕C++展开,介绍了变量定义,指出其是告知编译器创建变量存储的位置与方式,创建时涉及找存储地址和存储值。还阐述了C++中左值和右值的概念,左值可在赋值号两边,右值只能在右边,并给出了相应示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、变量的定义

声明变量的基本语法如下:

type variableName;

其中 type 是变量的类型,variableName 是变量的名称。

另外,可以在声明变量时进行初始化,如:

int d = 3, f = 5;           // 定义并初始化 d 和 f

变量定义就是告诉编译器在何处创建变量的存储,以及如何创建变量的存储。我理解为,在创建变量时相当于在干两个事情,一、找一个存储变量的地址;二、往上面存储(有初始化时)。

2、C++ 中的左值(Lvalues)和右值(Rvalues)

理解C++的左值和右值,可以更好地理解变量的定义。

C++ 中有两种类型的表达式:

  • 左值(lvalue):指向内存位置的表达式被称为左值(lvalue)表达式。左值可以出现在赋值号的左边或右边。
  • 右值(rvalue):术语右值(rvalue)指的是存储在内存中某些地址的数值。右值是不能对其进行赋值的表达式,也就是说,右值可以出现在赋值号的右边,但不能出现在赋值号的左边。

以下是一些左值的例子:

  • 变量名:int x; 这里的 x 是一个左值。
  • 数组元素:int arr[5]; arr[0] 是一个左值。
  • 结构体的成员:struct S { int a; }; S s; s.a 是一个左值。
  • 引用:int& ref = x; 这里的 ref 是 x 的左值引用。

以下是一些右值的例子:

  • 文字常量:5 是一个整型右值。
  • 临时变量:(int)(x + 1) 这里的 (x + 1) 是一个右值。
  • 返回局部变量的函数:int func() { return x; } 这里的 x 是一个右值。
  • 字符串字面量:"Hello" 是一个字符串右值。

因此,我觉得可以这么理解:在变量定义中,变量名指向该变量存储的地址,而初始化值则将相应内容存储在该变量地址中。

3、变量的声明

(待续...)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值