ternary operator in matlab

后端 未结 9 2012
后悔当初
后悔当初 2020-12-08 19:07

is there a way of typing for if like:

var = (cond) ? true : false;

or do we have to use this format?

if (cond)
 true
else
          


        
9条回答
  •  刺人心
    刺人心 (楼主)
    2020-12-08 19:37

    MATLAB doesn't have conditional expressions, but in some situations you can get a similar effect by saying, e.g., var = cond*true_expr + (1-cond)*false_expr. Unlike C's conditional expression, this will of course always evaluate both true_expr and false_expr, and if cond happens not to be either 0 or 1 (note: false behaves like 0; true behaves like 1) you'll get crazy results.

提交回复
热议问题