C+中的变量定义+;,定义3个变量? 我在C++代码中看到了这行,我刚开始C++,我不知道下面的行是什么!我猜它定义了三个变量:下限、上限和步骤,我以后不必初始化它们?i、 e:下=3,上=4
我的问题代码:C+中的变量定义+;,定义3个变量? 我在C++代码中看到了这行,我刚开始C++,我不知道下面的行是什么!我猜它定义了三个变量:下限、上限和步骤,我以后不必初始化它们?i、 e:下=3,上=4,c++,C++,我的问题代码: int lower, upper, step; 它声明了3个变量。它不会初始化其中任何一个。这相当于写作 int lower; int upper; int step; 所有这些变量都已声明,但没有一个已初始化 如果要初始化它们,请执行以下操作: int lower = 0; int upper = 0; int step = 1; 上面的代码只声明了三个变量。它们都没有被初始化。如果你正在做面向对象C++,那么初始化在你的构造函数中或多或少会发生。但如果不是,你可以在函数
int lower, upper, step;
它声明了3个变量。它不会初始化其中任何一个。这相当于写作
int lower;
int upper;
int step;
所有这些变量都已声明,但没有一个已初始化
如果要初始化它们,请执行以下操作:
int lower = 0;
int upper = 0;
int step = 1;
上面的代码只声明了三个变量。它们都没有被初始化。如果你正在做面向对象C++,那么初始化在你的构造函数中或多或少会发生。但如果不是,你可以在函数或主体中进行初始化 初始化看起来像: 下限=5;
…像这样声明这些变量是输入变量值所必需的 i、 e cin>>较低; cin>>上部 这与初始化它们不同 i、 e
int上限=4 代码只是声明变量
lower
、upper
和step
,在内存中保留空间以允许在这些变量中存储数据。除非变量在全局范围内声明,否则它不会为它们赋值。在C++中,这些未初始化变量的值是;实际上,这意味着这些变量的值实际上是随机的,仅由为这些变量保留的内存位置中存在的剩余值决定
如果要在声明时为多个变量赋值,可以将赋值与声明放在同一行中:
int lower = 0, upper = 100, step = 1;
或者,您可以稍后为它们赋值,可能是通过输入语句:
int lower, upper, step;
cin >> lower >> upper >> step;
#包括
使用名称空间std;
int main(){
//变量声明;始终在变量名之前包含数据类型。
int较低;
int-upper;
整数步;
//在本例中,“int”是数据类型。
//初始化示例:
下限=0;
上限=5;
步骤=1;
}
//“较低”已初始化为0。
//“上限”已初始化为5。
//“步骤”已初始化为1。
代码声明了三个类型为int
的变量,但是(在大多数情况下)不会初始化它们(如果要初始化它们,则会将所有变量的初始化为零)。您仍然需要初始化所有变量。谢谢。真有道理@simonc:如果这个声明出现在全局范围内,变量将被初始化为零。这里有一个很好的讨论:这是否意味着我以后可以在代码中使用lower=5,而不必执行“int lower=5;”?是的。变量lower
已声明,以后可以在同一范围内使用。@user3175173:是的,但通常最好在声明时初始化变量,以避免在初始化变量之前意外使用它们。
#include <iostream>
using namespace std;
int main(){
//Declaration of variables; always includes a data type before the variable name.
int lower;
int upper;
int step;
//In this example, "int" is the data type.
//Example of initialization:
lower = 0;
upper = 5;
step = 1;
}
//"lower" has been initialized to 0.
//"upper" has been initialized to 5.
//"step" has been initialized to 1.