"Нюансы для всех регионов мира" нужны только при переводе из UTC в локальное время, и они описываются с помощью tzdata. Для перевода unix time в UTC нужна совсем простая арифметика.
> Должен вполнить первую инструкцию из функции main, но печатает:
malloc.c: No such file or directory. До malloc еще не дошло, и я бы её "перепрыгнул".
Поставьте -O0 или -Og чтобы не инлайнилось всё что можно. Ну а то что заинлайнилось вполне можно просто прошагать по step/next/stepi/nexti.
С ходу приходят в голову три варианта: первый -- next, второй -- если зашли в функцию -- finish, третий -- ставить временную точку останова на инструкцию после call: tb *$pc + 5
> Как то вы не на тот вопрос отвечаете
> Как правильно?
Вы всё делаете правильно.
> использующую ввод/вывод
Нет никакой разницы в вашем примере, используется ввод-вывод или нет. Вы наверно имели в виду "использующий библиотечные функции".
> почему он не находит функцию
Он не функцию не может найти, а её исходный текст. Если вам нужен исходный текст printf установите исходники вашей libc.
Понимаете правильно. Но выглядит это... странно. Ну т.е. раз уж есть наследование, то чтобы воспользоваться его преимуществами, нужны виртуальные функции. А если использовать виртуальные функции, то и шаблоны как будто не нужны.
q -- запись макроса. Становитесь на первую строчку, включаете запись, редактируете первые две строчки, чтобы получился первый блок в результате, станоситесь на третью строчку, останавливаете запись макроса. Потом выполняете макрос столько раз, чтобы преобоазовать все оставшиеся строчки.
Я не знаю, есть ли тьюториал по такой базовой теме, любой сколько-нибудь нормальный код, разве что. Идея в том, что все интервалы представляются своими естественными границами, а циклы по ним включают левую границу и исключают правую. Т.е. в вашем случае нужно выкинуть из кода все +1 и -1, а условия цикла записать так: for(x = startX; x < endX; x++).