Ответ мой и
zaratustra - это как надо бы, когда операционной системы точно нет (хотя и присутствуют функции динамического выделения памяти). Для функции получения даты и строки из 9 символов нет необходимости с malloc(), можно использовать статический буфер, причем для разных строк, по мере необходимости. Внутренние статические переменные - примерно тоже самое, но их уж множество (в данном случае множество строк, вместо одной).
Пример уважаемого
Olej со структурной копией в стеке не очень понятен. Копия живет до перезаписи ее в стеке? Не случится ли это раньше, чем она потребуется?
Конечно, разговор о стиле программирования это немного

(и мои замечания тоже), тем более он разный в зависимости от использования/неиспользования операционной системы, иногда и конкретной ОС, условий задачи (например, условие реентерабельности get_date()) и т.п.
Сообщение отредактировал Vic1 - Dec 16 2005, 09:49