我无法理解变量 b 的内存分配是如何工作的,它背后是否有一些逻辑或者它只是另一个 UB 。b 的数据类型也变为整数。\
int a = 5,b;
cout<<b; // 16
Run Code Online (Sandbox Code Playgroud)
您可以在一条语句中声明多个相同类型的变量,其中变量之间用逗号分隔。因此,b被声明为int,并且未初始化,因此它具有不确定的值,并且使用其值是未定义的行为。
建议为每个语句声明一个变量,并始终初始化变量:
int a = 5;
int b = 0;
std::cout << b; // prints 0
Run Code Online (Sandbox Code Playgroud)
在一个声明中,这将是
int a = 5, b = 0;
std::cout << b; // prints 0
Run Code Online (Sandbox Code Playgroud)