c++中的?是什么意思.还有:是啥

c++中的?是表示什么.还有:是啥
请指教!

第1个回答  推荐于2019-10-08

“?”在编程语言中为三目运算符,表示判断,可代替简单的if...else...语句。

“:”前后表示不同条件下的返回值。

三目运算符,又称条件运算符,是计算机语言(c,c++,java等)的重要组成部分。它是唯一有3个操作数的运算符,所以有时又称为三元运算符。一般来说,三目运算符的结合性是右结合的。

三目运算格式为:<表达式1> ? <表达式2> : <表达式3>。

"?"运算符的含义是:先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果;如果表达式1的值为假,则执行表达式3,并返回表达式3的结果。

一般常用于简化if...else...的写法。例如:

意为:若a<0则b=0,否则b=1,

这样就大大减小了代码量。

扩展资料

其他运算:

赋值语句的作用是把某个常量或变量或表达式的值赋值给另一个变量。符号为‘=’。这里并不是等于的意思,只是赋值,等于用‘==’表示。

注意:赋值语句左边的变量在程序的其他地方必须要声明。

得已赋值的变量我们称为左值,因为它们出现在赋值语句的左边;产生值的表达式我们称为右值,因为它们出现在赋值语句的右边。常数只能作为右值。

例如:

count=5;

total1=total2=0;

第一个赋值语句大家都能理解。

第二个赋值语句的意思是把0同时赋值给两个变量。这是因为赋值语句是从右向左运算的,也就是说从右端开始计算。这样它先total2=0;然后total1=total2;那么我们这样行不行呢?

(total1=total2)=0;

对于上面的表达式,先计算括号中的部分,即将total2赋值给total1,然后赋值运算符将左侧对象作为左值返回,即返回total1,然后对total1赋值为0。即:

total1=total2;

total2=0;

参考资料来源:百度百科-c++运算符

本回答被网友采纳
第2个回答  推荐于2019-10-24

C++中的“?”表示判断,可代替简单的if...else...语句。

而“:”表示前后不同条件下的返回值。

三目运算符,又称条件运算符,是计算机语言(c,c++,java等)的重要组成部分。它是唯一有3个操作数的运算符,所以有时又称为三元运算符。一般来说,三目运算符的结合性是右结合的。

三目运算格式为:<表达式1> ? <表达式2> : <表达式3>。


扩展资料:

c++的语言特点:

1、支持数据封装和数据隐藏。

在C++中,类是支持数据封装的工具,对象则是数据封装的实现。C++通过建立用户定义类支持数据封装和数据隐藏。

在面向对象的程序设计中,将数据和对该数据进行合法操作的函数封装在一起作为一个类的定义。对象被说明为具有一个给定类的变量。

每个给定类的对象包含这个类所规定的若干私有成员、公有成员及保护成员。完好定义的类一旦建立,就可看成完全封装的实体,可以作为一个整体单元使用。类的实际内部工作隐藏起来,使用完好定义的类的用户不需要知道类是如何工作的,只要知道如何使用它即可。

2、支持继承和重用。

在C++现有类的基础上可以声明新类型,这就是继承和重用的思想。通过继承和重用可以更有效地组织程序结构,明确类间关系,并且充分利用已有的类来完成更复杂、深入的开发。新定义的类为子类,成为派生类。它可以从父类那里继承所有非私有的属性和方法,作为自己的成员。

3、支持多态性。

采用多态性为每个类指定表现行为。多态性形成由父类和它们的子类组成的一个树型结构。在这个树中的每个子类可以接收一个或多个具有相同名字的消息。

当一个消息被这个树中一个类的一个对象接收时,这个对象动态地决定给予子类对象的消息的某种用法。多态性的这一特性允许使用高级抽象。

继承性和多态性的组合,可以轻易地生成一系列虽然类似但独一无二的对象。由于继承性,这些对象共享许多相似的特征。由于多态性,一个对象可有独特的表现方式,而另一个对象有另一种表现方式。

参考资料来源:百度百科-c++

本回答被网友采纳
第3个回答  推荐于2020-10-29

C++中的“?”是三目条件运算符之一的表达式一(?:)

"?"运算符的含义是:先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果;如果表达式1的值为假,则执行表达式3,并返回表达式3的结果。

“:”用法1表示机构内位域的定义(即该变量占几个bit空间),用法2是构造函数后加冒号是初始化表达式:

如:iStack( int capacity ) : _stack( capacity ), _top( 0 ) { } 

扩展资料


C++中的算术运算符包括基本的算术运算符和自增、自减运算符。由算术运算符、操作数和括号构成的表达式称为算术表达式。

基本算术运算符有:+(加)、-(减或负号)、*(乘)、/(除)、%(取余)。其中“-”作为负号时为一元运算符,其余都为二元运算符。

这些基本算术运算符的意义与数学中相应符号的意义是一致的。它们之间的相对优先级关系与数学中的也是一致的,即先乘除、后加减,同级运算自左向右进行。使用算术运算符要注意以下几点:

1、“%”是取余运算,只能用于整型操作数。表达式a%b的结果为a/b的余数。 “%”的优先级与“/”相同。

2、当“/”用于两整型操作数相除时,其结果取商的整数部分,小数部分被自动舍弃。因此,表达式1/2的结果为0,这一点需要特别注意。

3、C++中的“++” (自增)、 “--” (自减)运算符是使用方便且效率很高的两个运算符,它们都是一元运算符。这两个运算符都有前置和后置两种使用形式。

参考资料来源:百度百科—C++

本回答被网友采纳
第4个回答  2019-07-17

C++中?和:单独使用没有特殊含义,合起来用时可以表达三目运算符,又称条件运算符。

条件运算符强大而独特,它提供了一种表达简单 if-else 语句的简写方法。该运算符由问号(?)和冒号(:)组成,其格式如下:

<表达式1>?<表达式2>:<表达式3> ;

含义是: 先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果 ; 如果表达式1的值为假,则执行表达式3 ,并返回表达式3的结果。



扩展资料

三目运算符一定要用于赋值语句,三目运算符的应用实例:

例如:x < 0 ? y = 10 : z = 20;

这个语句由 3 个子表达式组成,使用问号 ? 和冒号 : 分隔。这 3 个表达式分别是:x<0,y = 10 和 z = 20。

计算方式是如果条件x < 0是真的,则执行y = 10语句;否则,执行z = 20。

所以当x=-1时,x < 0 ? y = 10 : z = 20的最终结果为y=10。



本回答被网友采纳
第5个回答  推荐于2019-10-10

1,C++中的“?:”是三目条件运算符表达式之一。

先看以下三行代码:

int a = 1;
int b = 2;
return a > b ? 1 : 0;
? 和 : 是一个三目运算符,上面代码的意思是:如果a大于b的话返回 1,反之就是返回0。

2,对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。一个条件表达式绝不会既计算x,又计算y。条件运算符是右结合的,也就是说,从右向左分组计算。例如:a ? b : c ? d : e将按a ? b : (c ? d : e)执行。

3,<表达式1> ? <表达式2> : <表达式3>; "?"运算符的含义是:先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果;如果表达式1的值为假,则执行表达式3,并返回表达式3的结果。

注意:在C语言中,结果1和结果2的类型必须一致。

扩展资料:

C++运算符的分类:

运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算。例如:2+3,其操作数是2和3,而运算符则是‘+’。

参考资料:百度百科-运算符

本回答被网友采纳
相似回答