Нужна помощь в понимании шестнадцатеричных входных данных
Учитывая этот код
#include <stdio.h> int main(void) { int a[3] = {0x80000000 , 0x80000000 , 0x80000000}; int i , j , k; for ( i = 0 ; i < 10 ; ++i ) { int tmp; scanf("%d",&tmp); for(j=0 ; j<3;++j) { if(tmp>a[j]) { int k; for(k=2;k>j;--k) { a[k]=a[k-1]; } a[j] = tmp; break; } } } printf("%d %d %d\n",a[0] , a[1] , a[2]); return 0; }
Что я уже пробовал:
Это выведет 3 самых больших числа в массиве, которые пользователь ввел.
У меня есть приблизительное представление о том, как работает массив, но чего я не понимаю, так это этой строки.
int a[3] = {0x80000000 , 0x80000000 , 0x80000000};
как работает инициализация a[3] до 0x8000000?