<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Инициализация статического массива переменной длинны</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html</link>
    <description>Подскажите, пожалуйста, как инициализировать статический массив переменной длинны нулями. Если размерность массива, скажем, 2 то инициализация будет выглядеть как&lt;br&gt;double a&#091;2&#093;=&#123;0.,0.&#125;;&lt;br&gt;Теперь надо то же самое, но через переменную длинну массива. Скажем где-то в коде есть:&lt;br&gt;#define SIZE 2&lt;br&gt;и далее &lt;br&gt;double a&#091;SIZE&#093;=&lt;br&gt;но как указать что &apos;a&apos; должен быть заполнен SIZE нулями?&lt;br&gt;P.S. На всякий случай, SIZE не переменная, а параметр, известный на момент копиляции.&lt;br&gt;Спасибо. &lt;br&gt;</description>

<item>
    <title>Инициализация статического массива переменной длинны (Вова)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html#11</link>
    <pubDate>Tue, 02 Aug 2011 04:58:32 GMT</pubDate>
    <description>&amp;gt;&amp;gt;&amp;gt;&amp;gt; #define SIZE 8 &lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; double a&#091;SIZE&#093; = &#123;&#091;0 ... SIZE - 1&#093; = 3&#125;; &lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Ух ты, здорово! А это стандартная фишка или расширение gcc?&lt;br&gt;&amp;gt;&amp;gt; Да, симпатичная вещь, да -гсс расширение, только для с, не для с++ &lt;br&gt;&amp;gt;&amp;gt; - &lt;br&gt;&amp;gt;&amp;gt; http://gcc.gnu.org/onlinedocs/gcc/Designated-Inits.html &lt;br&gt;&amp;gt; Не гони, это фишка стандарта C99 &lt;br&gt;&lt;br&gt;по ссылке надо читать не только первое предложение, но и читать далее.&lt;br&gt;</description>
</item>

<item>
    <title>Инициализация статического массива переменной длинны (AHAHAC)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html#10</link>
    <pubDate>Sat, 23 Jul 2011 19:00:03 GMT</pubDate>
    <description>&amp;gt;&amp;gt;&amp;gt; #define SIZE 8 &lt;br&gt;&amp;gt;&amp;gt;&amp;gt; double a&#091;SIZE&#093; = &#123;&#091;0 ... SIZE - 1&#093; = 3&#125;; &lt;br&gt;&amp;gt;&amp;gt; Ух ты, здорово! А это стандартная фишка или расширение gcc?&lt;br&gt;&amp;gt; Да, симпатичная вещь, да -гсс расширение, только для с, не для с++ &lt;br&gt;&amp;gt; - &lt;br&gt;&amp;gt; http://gcc.gnu.org/onlinedocs/gcc/Designated-Inits.html &lt;br&gt;&lt;br&gt;Не гони, это фишка стандарта C99 &lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Инициализация статического массива переменной длинны (ghost_in_machine)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html#9</link>
    <pubDate>Fri, 22 Jul 2011 18:10:19 GMT</pubDate>
    <description>&amp;gt; #define SIZE 8 &lt;br&gt;&amp;gt; double a&#091;SIZE&#093; = &#123;&#091;0 ... SIZE - 1&#093; = 3&#125;; &lt;br&gt;&lt;br&gt;Очень красиво! О чем-то таком я и спрашивал. &lt;br&gt;Спасибо!&lt;br&gt;</description>
</item>

<item>
    <title>Инициализация статического массива переменной длинны (Вова)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html#8</link>
    <pubDate>Thu, 14 Jul 2011 11:46:05 GMT</pubDate>
    <description>&amp;gt;&amp;gt;&amp;gt; #define SIZE 8 &lt;br&gt;&amp;gt;&amp;gt;&amp;gt; double a&#091;SIZE&#093; = &#123;&#091;0 ... SIZE - 1&#093; = 3&#125;; &lt;br&gt;&amp;gt;&amp;gt; Ух ты, здорово! А это стандартная фишка или расширение gcc?&lt;br&gt;&amp;gt; Да, симпатичная вещь, да -гсс расширение, только для с, не для с++ &lt;br&gt;&amp;gt; - &lt;br&gt;&amp;gt; http://gcc.gnu.org/onlinedocs/gcc/Designated-Inits.html &lt;br&gt;&lt;br&gt;Вообще с обнулением всё прощё - если хотя бы один элемент массива задан, то остальные обнуляются, то есть можно писать проще: &lt;br&gt; double a&#091;SIZE&#093; = &#123;0.0&#125;;&lt;br&gt;</description>
</item>

<item>
    <title>Инициализация статического массива переменной длинны (Вова)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html#7</link>
    <pubDate>Thu, 14 Jul 2011 11:42:47 GMT</pubDate>
    <description>&amp;gt;&amp;gt; #define SIZE 8 &lt;br&gt;&amp;gt;&amp;gt; double a&#091;SIZE&#093; = &#123;&#091;0 ... SIZE - 1&#093; = 3&#125;; &lt;br&gt;&amp;gt; Ух ты, здорово! А это стандартная фишка или расширение gcc?&lt;br&gt;&lt;br&gt;Да, симпатичная вещь, да -гсс расширение, только для с, не для с++ - &lt;br&gt;http://gcc.gnu.org/onlinedocs/gcc/Designated-Inits.html&lt;br&gt;</description>
</item>

<item>
    <title>Инициализация статического массива переменной длинны (XAnder)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html#6</link>
    <pubDate>Thu, 14 Jul 2011 09:37:48 GMT</pubDate>
    <description>&amp;gt; bzero(a,sizeof(double)*SIZE); &lt;br&gt;&amp;gt; memset(a,0x00,sizeof(double)*SIZE); &lt;br&gt;&amp;gt; Ни каких извращений с препроцессором не надо.&lt;br&gt;&amp;gt; Оно само заполнит нулями ровно sizeof(double)*SIZE байт &lt;br&gt;&lt;br&gt;Всё верно. Вот только меня, как бывалого маразматика, заботит один вопрос:&lt;br&gt;&lt;br&gt;Все мы знаем, что (double) 0.0 состоит только из нулевых байт. Но будет ли так всегда и на всех платформах?&lt;br&gt;</description>
</item>

<item>
    <title>Инициализация статического массива переменной длинны (XAnder)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html#5</link>
    <pubDate>Thu, 14 Jul 2011 09:27:46 GMT</pubDate>
    <description>&amp;gt; #define SIZE 8 &lt;br&gt;&amp;gt; double a&#091;SIZE&#093; = &#123;&#091;0 ... SIZE - 1&#093; = 3&#125;; &lt;br&gt;&lt;br&gt;Ух ты, здорово! А это стандартная фишка или расширение gcc?&lt;br&gt;</description>
</item>

<item>
    <title>Инициализация статического массива переменной длинны (Вова)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html#4</link>
    <pubDate>Thu, 14 Jul 2011 07:23:33 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; double a&#091;2&#093;=&#123;0.,0.&#125;; &lt;br&gt;&amp;gt; Теперь надо то же самое, но через переменную длинну массива. Скажем где-то &lt;br&gt;&amp;gt; в коде есть: &lt;br&gt;&amp;gt; #define SIZE 2 &lt;br&gt;&amp;gt; и далее &lt;br&gt;&amp;gt; double a&#091;SIZE&#093;= &lt;br&gt;&amp;gt; но как указать что &apos;a&apos; должен быть заполнен SIZE нулями?&lt;br&gt;&amp;gt; P.S. На всякий случай, SIZE не переменная, а параметр, известный на момент &lt;br&gt;&amp;gt; копиляции.&lt;br&gt;&amp;gt; Спасибо.&lt;br&gt;&lt;br&gt;#define SIZE 8&lt;br&gt;double a&#091;SIZE&#093; = &#123;&#091;0 ... SIZE - 1&#093; = 3&#125;;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Инициализация статического массива переменной длинны (ImPressed)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/9188.html#3</link>
    <pubDate>Thu, 14 Jul 2011 05:03:17 GMT</pubDate>
    <description>&lt;br&gt;&amp;gt; но как указать что &apos;a&apos; должен быть заполнен SIZE нулями?&lt;br&gt;&amp;gt; P.S. На всякий случай, SIZE не переменная, а параметр, известный на момент &lt;br&gt;&amp;gt; копиляции.&lt;br&gt;&amp;gt; Спасибо.&lt;br&gt;&lt;br&gt;Вот так:&lt;br&gt;&lt;br&gt;bzero(a,sizeof(double)*SIZE);&lt;br&gt;memset(a,0x00,sizeof(double)*SIZE);&lt;br&gt;&lt;br&gt;Ни каких извращений с препроцессором не надо.&lt;br&gt;Оно само заполнит нулями ровно sizeof(double)*SIZE байт&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
