c++语言中mn?m :n 是什么意思?

如题所述

没有这种写法的,m、n之间有运算符
例如:m<n?m:n;
如果m小于n,则值为m,否则值为n
m>n?m:n;
如果m大于n,则值为m,否则值为n
m*n?m:n;
m*n不等于0,则值为m,否则值为n
m||n?m:n;
m、n中至少又一个不为0,则值为m,两者都为0,则值为n
m&&n?m:n;
m、n都不为0,则值为m,否则值为n
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-22
一般来看,你少写了一个符号。前面m与n之间一般应该有一个逻辑运算符。
具有这个种形式的表达式叫“问号表达式”,一般语法是:
[变量名=](表达式1)?(表达式A):(表达式B)
前面的“变量名=”可以省略。它的运行结果是:
如果表达式1成立,变量名取得表达式A的值,否则取得表达式B的值。
如果省略变量名,则:如果表达式1成立,运行表达式A,否则运行表达式B。
举例:
c=3>5?1:2
p=m<n?m:n
i<n?(i++):(i--)
相似回答