What would be the output of the below code snippet and why ?

3 次查看(过去 30 天)
var x = 0;
a();
function a() {
var x = 2;
b();
console.log(x);
}
function b() {
x++;
console.log(x);
}

回答(1 个)

Swaroop Gopa Srinivas
I assume that output of below Matlab code is required with reason.
x = 0;
a();
function a()
x = 2;
b();
disp(x);
end
function b()
x=2;
x = x+1;
disp(x);
end
(console.log(), var and ++ are not a valid Matlab commands)
>>MLAnswer
3
2
Reason:
x is a local variable and the scope of this variable is within the function only.
Among the display functions: disp(x) inside function b() is executed 1st, where the value of x is 3 (x=2; x=x+1). Then disp(x) inside function a() is executed, where the value of x is 2 (x=2)

类别

Help CenterFile Exchange 中查找有关 Deployment, Integration, and Supported Hardware 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by