আমি ১৯৯ released সালে প্রকাশিত এনএম্যাপের উত্স কোডটির দিকে চেয়ে ছিলাম এবং কোডটির এই বিভাগটি আমার কাছে কিছুটা অদ্ভুত বলে মনে হয়েছে:
int i=0, j=0,start,end;
char *expr = strdup(origexpr);
ports = safe_malloc(65536 * sizeof(short));
i++; /* <<<<<< */
i--; /* <<<<<< */
for(;j < exlen; j++)
if (expr[j] != ' ') expr[i++] = expr[j];
expr[i] = '\0';
কেন হবে i++;
এবং তারপর i--;
একে অপরের পর ঠিক আছে? i
হয় 0
, তারপর i++
পরিণত i
হয় 1
। এর পর, i--
দেখা যাচ্ছে i
করার 0
।
মূল উত্স কোডের লিঙ্ক। সন্ধান করা:
i++;
i--;
এই কি জন্য কেউ ব্যাখ্যা করতে পারেন?
-O
এটি সত্যই এই বিবৃতিগুলিকে অপ্টিমাইজ করে।