تنها عملگر شرطی سه تائی که در++C موجود است عملگرشرطی است که سه عملوند دارد و فرم کلی آن به صورت زیر است:

;exp1 ? exp2 : exp3

اگر حاصل عبارت exp1 درست باشد (غیر صفر باشد) exp2 و اگر exp1 غلط باشد (برابر با صفر باشد) عبارت exp3 به عنوان نتیجه ارزیابی می شود.
مثال. اگر y غیرصفر باشد مقدار ۱ و اگر صفر باشد مقدار ۱۰۰ به x اختصاص داده می شود.

;x = y ? 1 : 100

مثال. عملگر شرطی مشابه یک جمله شرطی عمل می کند.

;z = (x > y) ? x : y

که مشابه جمله شرطی زیر است

if (x > y)
;   z = x
else
; z = y

مثال. در عبارت زیر a برابر با b می شود اگر نتیجه کاهش b غیرصفر باشد. اگر نتیجه صفر شود a و b هردو برابر با مقدار -۹۹ می شوند

;a = –b ? b : (b = -99)