<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: getc vs fgetc</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/7526.html</link>
    <description>Подскажите разницу между функциями Си: getc и fgetc .&lt;br&gt;Вот цитата из Кенигана  и Ритчи:&lt;br&gt;getc делает тоже, что и fgetc, но в отличие от последней, если она - макрос, поток может браться более одного раза.&lt;br&gt;&lt;br&gt;Я не понимаю фразы &quot;поток может браться более одного раза&quot;.&lt;br&gt;Это почему я не могу &quot;взять поток&quot; больше одного раза? Что имеется ввиду?&lt;br&gt;Такой же вопрос можно задать относительно функций  putc и fputc.&lt;br&gt;</description>

<item>
    <title>getc vs fgetc (Michelnok)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/7526.html#4</link>
    <pubDate>Wed, 06 Aug 2008 15:30:41 GMT</pubDate>
    <description>&amp;gt;&lt;br&gt;&amp;gt;То есть, имеются ввиду всего лишь навсего так называемые &quot;побочные эффекты&quot; использования &lt;br&gt;&amp;gt;макросов? &lt;br&gt;&lt;br&gt;Да.&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>getc vs fgetc (rasmon)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/7526.html#3</link>
    <pubDate>Wed, 06 Aug 2008 13:25:17 GMT</pubDate>
    <description>&amp;gt;&amp;gt;getc делает тоже, что и fgetc, но в отличие от последней, если &lt;br&gt;&amp;gt;&amp;gt;она - макрос, поток может браться более одного раза. &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Следует читать не &quot;поток может браться...&quot;, а &quot;параметр stream может вычисляться...&quot;. Т.е. &lt;br&gt;&amp;gt;getc может быть макросом, и если ты в качестве параметра ей &lt;br&gt;&amp;gt;укажешь выражение, то это выражение может быть выполнено заранее неизвестное количество &lt;br&gt;&amp;gt;раз. &lt;br&gt;&amp;gt;Например, неизвестно чему будет равна переменная stream после &quot;вызова&quot; getc(stream++). &lt;br&gt;&lt;br&gt;То есть, имеются ввиду всего лишь навсего так называемые &quot;побочные эффекты&quot; использования макросов? &lt;br&gt;Также, получается, что, если &quot;не уверен&quot;, то используй fgets? )&lt;br&gt;</description>
</item>

<item>
    <title>getc vs fgetc (anonymous)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/7526.html#2</link>
    <pubDate>Mon, 04 Aug 2008 18:34:21 GMT</pubDate>
    <description>&amp;gt;Например, неизвестно чему будет равна переменная stream после &quot;вызова&quot; getc(stream++). &lt;br&gt;&lt;br&gt;Лучше такой пример: есть функция get_stream() возвращающаяя поток.  Неизвестно, сколько раз она будет вызвана во время getc(get_stream())&lt;br&gt;</description>
</item>

<item>
    <title>getc vs fgetc (Michelnok)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/7526.html#1</link>
    <pubDate>Mon, 04 Aug 2008 15:22:31 GMT</pubDate>
    <description>&amp;gt;getc делает тоже, что и fgetc, но в отличие от последней, если &lt;br&gt;&amp;gt;она - макрос, поток может браться более одного раза. &lt;br&gt;&lt;br&gt;Следует читать не &quot;поток может браться...&quot;, а &quot;параметр stream может вычисляться...&quot;. Т.е. getc может быть макросом, и если ты в качестве параметра ей укажешь выражение, то это выражение может быть выполнено заранее неизвестное количество раз.&lt;br&gt;Например, неизвестно чему будет равна переменная stream после &quot;вызова&quot; getc(stream++).&lt;br&gt;</description>
</item>

</channel>
</rss>
