Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
'i++;`在Matlab中_Matlab_Syntax_Increment - Fatal编程技术网

'i++;`在Matlab中

'i++;`在Matlab中,matlab,syntax,increment,Matlab,Syntax,Increment,是否有一个快捷语句可以实现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 =

是否有一个快捷语句可以实现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语言,关于使用这些操作符的讨论由来已久。Mathworks支持部门还指出不要实现这些操作符。

对不起<代码>i++
更酷。:-)谢谢你,差点忘了。谢谢你的建议,但我认为
I=I+1
更有效。我不确定@Chris是否真的打算让任何人使用他的示例函数,但如果有人这样做,请确保只使用
increment x
而不是
increment(x)
。实际上,两种方法都试一下,弄糊涂,然后用这种混乱来提高你对MATLAB如何处理命令/函数双重语法的理解:)@SamRoberts确切地说-我把它包括进来只是为了表明如果你真的想(即使你不应该)你可以这样做,因为我对留下单行答案感到很抱歉:)