Обычно они будут использоваться для ограничения области видимости переменной, но в вашем примере Aux_U16 = 16;
не определена новая переменная, поэтому должна существовать уже существующая переменная с именем Aux_16
, а за ее пределами она будет продолжите, чтобы иметь любое значение, которое оно было последним установлено в пределах блока.
Ограничение области действия позволяет создать, например, новую переменную с именем i
, не задумываясь о состоянии любого i
вне этого блока - к сожалению, как и в примере, который вы дали, компилятор wouldn ' t обратите внимание на разницу между определением и назначением, и вы можете закончить развращение переменной, которую вы считали защищенной.
Другая распространенная причина, по которой найти вещи так просто, вырезать и вставить. Там нет ничего плохого в свободностоящих блоках, подобных этому, и иногда люди просто забывают удалить остатки. Или они могли иметь временные переменные там, пока они не отредактировали код, и они ушли. Или они могут означать это как примечание к себе, что код внутри блока принадлежит вместе.
Они указывают объем. Вот ссылка [http://msdn.microsoft.com/en-us/library/b7kfh662.aspx](http://msdn.microsoft.com/en-us/library/b7kfh662.aspx) – finlaybob