为什么这是一个有效的MATLAB查询?为什么一行中的多个二元运算符在MATLAB中工作?
3++4
其计算结果为7
。更令人不安的是:
3+-5
的计算结果为-2
。
给出下面,我预计
3+*5
评估到15相反,它抛出一个错误。
在Why is a trailing comma in a cell array valid Matlab syntax?
为什么这是一个有效的MATLAB查询?为什么一行中的多个二元运算符在MATLAB中工作?
3++4
其计算结果为7
。更令人不安的是:
3+-5
的计算结果为-2
。
给出下面,我预计
3+*5
评估到15相反,它抛出一个错误。
在Why is a trailing comma in a cell array valid Matlab syntax?
+
和-
相关thewaywewalk的回答我刚才的问题可能的解决方案不仅是二元操作,他们也是一元运算符。
文档:
http://de.mathworks.com/help/matlab/ref/uplus.html http://de.mathworks.com/help/matlab/ref/uminus.html
为了这个原因,前两行被评估为3+(+4)
和3+(-5)
但因为没有一元乘法存在最后的失败。
'3 ++++ - ++ 5'计算结果为-2。猜'''比'+'更强吗?怪异的... – chessofnerd
一元'-'否定值,而一元'+'只是返回原始值(如分别乘以-1和1) – tmpearce