اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

تاریخچه‌ی ویرایش برای ارسال #1306

شنبه ۳۱ فروردین ۱۳۹۲ ارسال شده توسط prodo

برنامه‌ی زیر رو تست کردم

#include
using namespace std;

int main()
{
int a = 0;
for(int i=0, j=0; i<5 && j<5; a = i++, j++)
cout<<"i : "<
دوشنبه ۲ اردیبهشت ۱۳۹۲ ویرایش شده توسط prodo

برنامه‌ی زیر رو تست کردم

#include <iostream>
using namespace std;

int main()
{
int a = 0;
for(int i=0, j=0; i<5 && j<5; a = i++, j++)
cout<<"i : "<<i<<", j = "<<j<<", a = "<<a<<endl;
return 0;
}
خروجی این شد:

i : 0, j = 0, a = 0
i : 1, j = 1, a = 0
i : 2, j = 2, a = 1
i : 3, j = 3, a = 2
i : 4, j = 4, a = 3
برنامه‌ی زیر رو با تغییر `j++` به '++j` `++j` تست کردم

#include <iostream>
using namespace std;

int main()
{
int a = 0;
for(int i=0, j=0; i<5 && j<5; a = i++, j++)
cout<<"i : "<<i<<", j = "<<j<<", a = "<<a<<endl;
return 0;
}
خروجی تغییر نکرد!!! تا این‌جا این به دست اومده که این کاما همون کار معمول و می‌کنه. یعنی مقدار آخرین عبارت کاما یعنی سمت راست‌ترین رو برمی‌گردونه.
اما چرا این دوتا خروجی‌ها یکی شد خب؟