ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
19 мая
197044 Топик полностью
SciFi (09.06.2010 00:20 - 00:23, просмотров: 109) ответил Скрипач на От! А какова "логическая цепочка" (от стандарта), доказывающая что это неизбежно?
Здрассьте. Это азы языка Си. Их обычно не по стандартам учат, а по учебникам (Керниган и Ричи, к примеру). А стандарт обычно читают, когда совсем заковыристые случаи разбирать приходится. Предполагаю, что для писателя компиляторов это настольная книга. А вот и выдержка из стандарта C99. Раздел 5.1.2 "Execution environments": ... All objects with static storage duration shall be initialized (set to their initial values) before program startup ... И ещё. Раздел 6.2.4 "Storage durations of objects": ... An object whose identifier is declared with external or internal linkage, or with the storage-class specifier static has static storage duration.Its lifetime is the entire execution of the program and its stored value is initialized only once, prior to program startup ... Ну и слова "логическая цепочка" и "неизбежно" сильно резанули слух. Стандарт - это не набор логических цепочек, а строгое формальное определение языка. Там просто сказано, что будет так, а не иначе, и никаких гвоздей.
ส็็็็็็็็็็็็็็็็็็็็็็็็็༼ ຈل͜ຈ༽ส้้้้้้้้้้้้้้้้้้้้้้้