我在C語言書中找到了這個例子。 此代碼將轉換輸入數字庫並將其存儲在數組中。這條語句背後的邏輯是什麼:for(--index; index> = 0; --index)?
#include <stdio.h>
int main(void)
{
const char base_digits[16] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
int converted_number[64];
long int number_to_convert;
int next_digit, base, index = 0;
printf("type a number to be converted: \n");
scanf("%ld", &number_to_convert);
printf("Base\n");
scanf("%i", &base);
do
{
converted_number[index] = number_to_convert % base;
++index;
number_to_convert = number_to_convert/base;
}
while (number_to_convert != 0);
// now display the number
printf("converted number = :");
for (--index; index >= 0; --index)
{
next_digit = converted_number[index];
printf("%c", base_digits[next_digit]);
}
printf("\n");
return 0;
}
我無法理解最後一個循環。它應該有助於扭轉陣列,但我不明白!
這行是什麼意思:for (--index; index >= 0; --index)
?
我想補充一點,這是一本書,你應該在垃圾桶裏,如果你遇到類似的循環折騰在它裏面。 ** dasblinkenlight **輕鬆地突出了一種更好的方法,任何值得他的鹽的程序員都可以提出。 –