Следующий код округляет аргумент до граничного числа байтов размером int.
#define _INTSIZE(n) ((sizeof(n) + sizeof(int) - 1) & ~(sizeof(int) - 1))
На моей машине int равно 4 байта, так что - поправьте меня, если я ошибаюсь - это должноаналогично поиску следующего кратного 4 целого числа (на моей машине).Под следующим кратным 4 я подразумеваю, что число должно быть округлено до кратного 4, если не кратно 4. Если оно уже кратно 4, его следует оставить в покое.
Я играл с этим кодом.Короче говоря, это: почему этот код работает? (возможно, это не так, но кажется.) Мне хотелось бы подумать, почему он работает для ВСЕХ случаев, а не только дляте, которые я опробовал.