Matlab中`i++`的语法是什么
What is the syntax of `i++` in Matlab
是否有一个快捷语句可以完成 C 代码 i++
的功能? (即i
增加1
)?
当然我不是说显而易见的i = i + 1
。
不,您不能在 Matlab 中执行此操作。要增加变量,您必须使用 i = i + 1;
.
编辑 - 如果您真的迫切需要这样的东西,您可以定义一个看起来像
的函数
function increment(x)
evalin('caller', sprintf('%s = %s + 1;', x, x));
end
然后这样称呼它
>> x = 1;
>> increment x;
>> x
x =
2
然而这会 (a) 令人困惑并且 (b) 缓慢。
自增/自减运算符未在 matlab 中实现。
保持语言尽可能简单是有原因的。对于 c,关于 undefined behaviour using these operators. Mathworks support also pointed out similar reasons 不实现这些运算符的讨论很长。
是否有一个快捷语句可以完成 C 代码 i++
的功能? (即i
增加1
)?
当然我不是说显而易见的i = i + 1
。
不,您不能在 Matlab 中执行此操作。要增加变量,您必须使用 i = i + 1;
.
编辑 - 如果您真的迫切需要这样的东西,您可以定义一个看起来像
的函数function increment(x)
evalin('caller', sprintf('%s = %s + 1;', x, x));
end
然后这样称呼它
>> x = 1;
>> increment x;
>> x
x =
2
然而这会 (a) 令人困惑并且 (b) 缓慢。
自增/自减运算符未在 matlab 中实现。
保持语言尽可能简单是有原因的。对于 c,关于 undefined behaviour using these operators. Mathworks support also pointed out similar reasons 不实现这些运算符的讨论很长。