Последний раз когда я интересовался темой ipv6 лет десять назад, оно было в каком-то зачаточном состоянии - никто его не поддерживал из провайдеров.
если тебе надо 1 байт прочитать из произвольного адреса, современная архитектура этого не умеет. Она читает (обычно) кусок памяти шириной в 64 байта. Это обзывается кеш-линия. И уже из нее будет прочитан нужный байт.
Вы действительно не можете отличить [] от *?
классика же. sizeof указателя и массива.
int main(int argc, const char *argv[]) { int main(int argc, const char **argv) {
В первом случае функция получает указатель на массив, во втором - просто указатель
Я под массивом понимаю std::vector или std::array
отрицательный индекс в C/С++ никогда бы не работал, потому что элементы массива индексируются 0..N-1.
0..N-1. Любой индекс вне этого диапазона, а значит и отрицательный - это UB.
Если цепляться к запятым
size_t. Который всегда - беззнаковое целое такого размера, чтобы им можно было индексировать всю оперативку на данной архитектуре - так в Стандарте языка написано.
до 1996 года. Это было абсолютное царство 32х разрядных машин. Даже первые Pentium адресовали мало. И никто не думал о том что когда-то разрядная сетка адреса будет удвоена.
Вот есть кэш TLB, не понимаю, кто отвечает(сам блок управления памяти или ОС) за замещения при заполнении.
К примеру это за O( log(n) ) параллельно можно реализовать аппаратно, найти наименьшее. Если места на N компараторов хватит(не разбираюсь в масштабах).
Sanes, а IPv4 адрес и порт на котором вход в туннель как узнать -- только в этой табличке посмотреть?