Я наткнулся на следующий код:
int main()
{
char *A=(char *)malloc(20);
char *B=(char *)malloc(10);
char *C=(char *)malloc(10);
printf("\n%d",A);
printf("\t%d",B);
printf("\t%d\n",C);
return 0;
}
//output-- 152928264 152928288 152928304
Я хочу знать, как распределение и заполнение выполняется с помощью malloc ()
. Глядя на результат, я вижу, что начальный адрес кратен 8. Есть ли другие правила?