Деление целых чисел

Я знаю, что при делении целых чисел по умолчанию дробная часть отбрасывается. Например,

int i, n, calls = 0;
n = 1;
n /= 3;
printf("N = %i\n", n);
for (i = 1; i > 0; i /= 3) {
    calls++;
}
printf("Calls = %i\n", calls);

Приведенный выше код выводит:

N = 0
Calls = 1

Не могли бы вы объяснить это поведение?

5
задан Chris Smith 31 January 2011 в 23:00
поделиться