PDA

View Full Version : سوال: استفاده از بعضی علامت ها در c++ (؟ و:و....)



nokhodi
پنج شنبه 19 دی 1392, 22:47 عصر
میخواستم بدونم علامت ؟ و : دقیقا برای چه کاری استفاده میشن آیا؟!!

به عنوان مثال در قطعه کد زیر:


//set time
void time::setTime(int h, int m, int s)
{
hour = (h >= 0 && h < 24) ? h : 0;
minute = (m >= 0 && m < 60) ? m : 0;
second = (s >= 0 && s < 60) ? s : 0;
}
//*********** print time ************
void time::printStandard()
{
cout << (( hour == 0 || hour == 12) ? 12 : hour % 12)
<< " : " << (minute < 10 ? "0" : "") << minute
<< " : " << (second < 10 ? "0" : "") << second
<< (hour < 12 ? " AM" : " PM");
}



مثلا توی این دستور چه کاری انجام میده:

hour = (h >= 0 && h < 24) ? h : 0;
minute = (m >= 0 && m < 60) ? m : 0;
second = (s >= 0 && s < 60) ? s : 0;

کامبیز اسدزاده
پنج شنبه 19 دی 1392, 23:16 عصر
این یک نوع عبارت شرطی است :

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

exp1 ? exp2 : exp3;

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

کامبیز اسدزاده
پنج شنبه 19 دی 1392, 23:18 عصر
یک نمونه از این نوع شرط :


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


که مشابه جمله شرطی زیر در if else هستش.


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

nokhodi
جمعه 20 دی 1392, 12:46 عصر
مرسی برای مثالتون...
:)

کامبیز اسدزاده
جمعه 20 دی 1392, 12:55 عصر
مرسی برای مثالتون...
:)

خواهش می کنم.