تفاوت i++ با ++i در حلقه for - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

تفاوت i++ با ++i در حلقه for

+1 امتیاز

سلام این 2 تا کد فرقی هم با هم  دارن ؟!

for(int i=0;i<5;i++)

VA

for(int i=0;i<5;++i)

 

سوال شده دی 26, 1392  بوسیله ی proprogrammer (امتیاز 40)   5 6 9
دوباره تگ گذاری شد بهمن 12, 1392 بوسیله ی BlueBlade

2 پاسخ

+3 امتیاز
 
بهترین پاسخ

توی اینجا فرقی ندارن. ولی کلا i++ با ++i فرق داره .

اینو نگاه کن :

#include <stdio.h>
#include <conio.h>
int main ()
{
    int i;

    i = 1;
    printf("%d\n",i++);
    printf("%d\n",i);

    i = 1;
    printf("%d\n",++i);
    printf("%d\n",i);

    _getch();
    return 0;
}

 

تو بخش اول ابتدا i رو تو خروجی چاپش میکنه بعدش میاد یه واحد افزایش میده . یعنی ++i .
تو بخش دوم ابتدا میاد j رو یه واحد افزایش میده بعدش تو خروجی چاپش میکنه . یعنی i++ ,
پاسخ داده شده دی 26, 1392 بوسیله ی Ali Rahbar (امتیاز 4,240)   6 16 46
انتخاب شد دی 28, 1392 بوسیله ی proprogrammer
+3 امتیاز
در اینجا هیچ تفاوتی با هم ندارن ولی در کل وقتی ++ قبل از متغییر باشه اول یکی به مقدار متغییر اضافه میشه و بعد متغییر مورد استفاده قرار میگیره و اگه ++ بعد از متغییر باشه اول متغییر مورد استفاده قرار میگیره و بعد یکی به مقدارش اضافه میشه.
پاسخ داده شده دی 26, 1392 بوسیله ی coder (امتیاز 149)   4
...