가능한 중복 :
To ternary or not to ternary?해야할까요? 연산자는 더 자주 사용됩니까?
오늘, 나는 작은 보석 우연히 내 C 책을 읽는 동안 다음 ?
연산자. 그것은 날씨에 기초한 if else 문이나 진술이 true 또는 false가 아닌 것처럼 동작하는 삼항 연산자입니다.
분명히 ?
연산자를 사용하는 것이 더 효율적입니다.
foo = somefunc();
if(foo) printf("\nFunction Suceeded!");
else printf("\nFunction Failed!");
이것은 코드는 첫번째와 동일하지만 ?
연산자를 사용합니다 :
(somefunc을 가정하는 것은 실패 NULL을 반환)
somefunc() ? printf("\nFunction Suceeded!") : printf("\nFunction Failed!");
을
이것이 대부분의 경우 유용하지 않음을 알 수 있습니다. 그러나 if/else 문 대신 쉽게 사용할 수있는 셀 수없는 사례를 보았습니다.
이 방법을 사용하는 것이 좋습니까?
가독성에 대한 자세한 내용은 중첩 된 연산자를 사용하는 경우 특히 삼항 연산자를 사용하면 코드를 이해하기가 어려울 수 있습니다. – Neil
'printf (somefunc()? "\ nFunction Suceeded!": "\ nFunction Failed!"); – Vlad
@Vlad 정말 멋집니다. –