>  기사  >  백엔드 개발  >  C 언어에서 삼항 연산자를 사용하는 방법은 무엇입니까?

C 언어에서 삼항 연산자를 사용하는 방법은 무엇입니까?

coldplay.xixi
coldplay.xixi원래의
2020-06-28 09:35:0615989검색

C 언어의 삼항 연산자 사용법: 먼저 조건식 [b ? x : y]에 대해 조건 b를 계산한 다음 b의 값이 true이면 값을 계산합니다. y 값을 계산하면 연산 결과가 y 값이 됩니다.

C 언어에서 삼항 연산자를 사용하는 방법은 무엇입니까?

C 언어 삼항 연산자 사용법:

조건식 b ? x : y에 대해 먼저 조건 b를 계산한 후 판단합니다. b 값이 true이면 x 값이 계산되고, 연산 결과는 x 값이 됩니다. 그렇지 않으면 y 값이 계산되고 연산 결과는 y 값이 됩니다. b ? x : y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。

一个条件表达式绝不会既计算x,又计算y。条件运算符是右结合的,也就是说,从右向左分组计算。例如,a ? b : c ? d : e将按a ? b : (c ? d : e)执行。

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

可以理解为条件 ? 结果1 : 结果2 里面的?号是格式要求。也可以理解为是不是条件成立,条件成立为结果1否则为结果2。

C 언어에서 삼항 연산자를 사용하는 방법은 무엇입니까?

扩展资料:

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

以下是关于条件运算符的几点说明:

(1)、 通常情况下,表达式1是关系表达式或逻辑表达式,用于描述条件表达式中的条件,表达式2和表达式3可以是常量,变量或表达式。例如:

(x==y)?&#39;Y&#39;:&#39;N&#39;(d=b*b-4*a*c)>=0?sqrt(d):sqrt(-d)ch=(ch>=&#39;A&#39;&&ch<=&#39;Z&#39;)?(ch+32):ch

以上均为合法的条件表达式。

(2)、 条件表达式的执行顺序为:先求解表达式1,若值为非0,表示条件为真,则求解表达式2,此时表达式2的值就作为整个条件表达式的值;

若表达式1的值为0,表示条件为假,则求解表达式3,表达式3的值就是整个条件表达式的值。例如:

(a>=0)?a:-a 执行结果是a的绝对值。

(3) 、在程序中,通过把条件表达式的值直接赋予某个变量。例如:

min=(a<b>执行结果就是将条件表达式的值赋予变量min,即将a和b二者中较小的数赋给min。</b>

(4)、 条件表达式的优先级别仅高于赋值运算符,而低于前面遇到过的所有运算符。

因此,min=(a<b>括号可以不要,可直接写成,<code>min=a<b>如果有<code>x<y>等效于<code>x<y>而不等效于<code>(x<y></y>

조건식은 x와 y를 모두 계산하지 않습니다. 조건부 연산자는 오른쪽 결합입니다. 즉, 오른쪽에서 왼쪽으로 그룹으로 평가됩니다. 예를 들어, a ? b : c ? d : ea ? b : (c ? d : e)로 실행됩니다.

? "?" 연산자의 의미는 다음과 같습니다. 먼저 표현식 1의 값을 찾은 다음 표현식 2를 실행하고 표현식 2; 표현식 1이 false로 평가되면 표현식 3이 실행되고 표현식 3의 결과가 반환됩니다.

조건으로 이해하면 Result 1 : Result 2가 들어가나요? 아니요. 형식 요구 사항입니다. 조건이 성립하는지 여부는 결과 1로 조건이 성립되고, 그렇지 않으면 결과 2로 이해될 수도 있습니다.

C 언어에서 삼항 연산자를 사용하는 방법은 무엇입니까?

확장 정보:

조건 연산자라고도 알려진 삼항 연산자는 컴퓨터 언어(c, c++, java 등)의 중요한 부분을 의미합니다. 피연산자가 3개인 유일한 연산자이므로 삼항 연산자라고도 합니다. 일반적으로 삼항 연산자의 결합성은 오른쪽 결합성입니다.

다음은 조건 연산자에 대한 몇 가지 참고 사항입니다.

(1), 일반적으로 수식 1은 조건식의 조건을 설명하는 데 사용되는 관계식 또는 논리식이고, 수식 2 및 수식 3은 상수일 수 있습니다. 변수 또는 표현식. 예:

x>0?1:x<0?-1:0
위 내용은 모두 합법적인 조건식입니다.

(2) 조건식의 실행 순서는 다음과 같습니다. 먼저 수식 1을 푼다. 값이 0이 아니면 조건이 참이라는 뜻이고, 그런 다음 수식 2를 푼다. 이때 수식 2의 값은 다음과 같다. 🎜🎜식 1의 값이 0이면 조건식이 거짓이라는 뜻이므로, 식 3의 값을 풀면 식 3의 값이 전체 조건식의 값이 됩니다. 예: 🎜🎜(a>=0)?a:-a 실행 결과는 a의 절대값입니다. 🎜🎜(3) 프로그램에서는 조건식의 값을 변수에 직접 대입합니다. 예를 들면 다음과 같습니다. 🎜🎜min=(a<b>실행 결과는 조건식의 값을 변수 min에 할당합니다. 즉, a와 a의 더 작은 수를 할당합니다. b를 분으로 🎜🎜(4) 조건식의 우선순위 수준은 할당 연산자보다 높지만 이전에 만난 모든 연산자보다 낮습니다. 🎜🎜따라서 <code>min=(a<b>에는 대괄호가 필요하지 않으며 <code>min=a<b>로 직접 작성할 수 있습니다. <code>x<y>이 있는 경우 <code>x<y>와 동일하지만 <code>(x&lt ;y?x+1:y)-1🎜🎜(5), 조건 연산자의 조합 방향은 "오른쪽에서 왼쪽"입니다.🎜🎜(6), 조건식은 다음과 같이 허용됩니다. 중첩, 즉 조건식에서 허용되는 식 2와 식 3도 조건식입니다. 예: 🎜
x>0?1:(x<0?-1:0)
🎜 위 조건식에서 식의 세 번째 부분은 조건식의 연관성에 따라 다음과 동일합니다. 🎜
if(a%2==0)printf("even/n");elseprintf("odd/n");
🎜 해당 기능은 부호를 결정하는 것입니다. x가 양수이면 조건식의 값은 1이고, x가 음수이면 조건식의 값은 -1이고, x가 0이면 조건식의 값은 0입니다. 🎜🎜(7) 조건식은 일반 if 문을 대체할 수 없습니다. if 문에 포함된 문이 할당 문인 경우에만 if 문을 대체할 수 있습니다(그리고 두 분기 모두 동일한 변수에 값을 할당합니다). 예: 🎜rrreee🎜 이 문의 기능은 다음과 같습니다. a가 짝수이면 짝수를 출력하고, a가 홀수이면 홀수를 출력합니다. 🎜🎜(8) 표현식 1, 표현식 2, 표현식 3의 유형은 다를 수 있습니다. 이때 조건식의 값 유형은 그 중 상위 유형입니다. 🎜🎜추천 튜토리얼: "🎜C 동영상 튜토리얼🎜"🎜

위 내용은 C 언어에서 삼항 연산자를 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.