Programming languages 计算机程序设计中的代码块 什么是代码块 是否代码块可以包含任意数量和类型的语句,如复合语句(if、for、while、函数、类)、赋值语句 每个代码块都有各自的作用域吗 代码块是语句列表 否,代码块不能包含循环或函数声明。一个函数或循环将启动一个新的作用域,并可能启动一个新的代码块

Programming languages 计算机程序设计中的代码块 什么是代码块 是否代码块可以包含任意数量和类型的语句,如复合语句(if、for、while、函数、类)、赋值语句 每个代码块都有各自的作用域吗 代码块是语句列表 否,代码块不能包含循环或函数声明。一个函数或循环将启动一个新的作用域,并可能启动一个新的代码块,programming-languages,Programming Languages,代码块中的所有语句都在同一范围内。但是,每个代码块不一定有自己的作用域。例如: //OUTTER SCOPE variable a; // code block 1 statement a; // code block 1 loop ( condition ) { // INNER SCOPE variable b; // code block 2 statement b; // code bl

代码块中的所有语句都在同一范围内。但是,每个代码块不一定有自己的作用域。例如:

//OUTTER SCOPE

variable a;    // code block 1
statement a;   // code block 1

loop ( condition ) {

  // INNER SCOPE 

  variable b;                   // code block 2
  statement b;                  // code block 2

}

// BACK IN OUTTER SCOPE

statement c;                  // code block 3
CAN reference variable a;     // code block 3
CANNOT reference variable b;  // code block 3

代码块1和3在同一范围内,但代码块2的范围较窄。语言之间可能存在一些差异,但我认为这通常是正确的。

您是否询问特定语言中的代码块?不同的语言可能对这个问题有不同的答案。@ Venantius,在Python,C++和C++中怎么样?这些语言之间有什么区别?