<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Внутренние функции в си не работают с переменными]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=11443</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=11443&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Внутренние функции в си не работают с переменными».]]></description>
		<lastBuildDate>Fri, 04 Mar 2011 15:52:29 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Внутренние функции в си не работают с переменными]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=152591#p152591</link>
			<description><![CDATA[<div class="quotebox"><cite>zhevak пишет:</cite><blockquote><p>1. Используйте функцию localtime() (или gmtime()) и руками (т.е. с помощью printf()) создавайте нужный Вам формат.<br />2. Используйте функцию asctime()<br />3. Используйте функцию ctime()<br />4. Используйте функцию strftime()</p></blockquote></div><p>ИМХО посл. вариант оптимальный обычно. strftime() тоже позволяет задавать ручками формат.</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Fri, 04 Mar 2011 15:52:29 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=152591#p152591</guid>
		</item>
		<item>
			<title><![CDATA[Re: Внутренние функции в си не работают с переменными]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=152569#p152569</link>
			<description><![CDATA[<p>Вообще есть несколько способов. Плюс Ваш, который как я понял тоже работает.</p><p>1. Используйте функцию <strong>localtime()</strong> (или <strong>gmtime()</strong>) и руками (т.е. с помощью printf()) создавайте нужный Вам формат.<br />2. Используйте функцию <strong>asctime()</strong><br />3. Используйте функцию <strong>ctime()</strong><br />4. Используйте функцию <strong>strftime()</strong></p><p>Как применять эти функции, думаю, сможете сами нагуглить.</p><p>И простите за совет, не пожалейте 500 рэ -- купите книжку Н.Мэтью и Р.Стоунса &quot;Основы программирования в Linux&quot; <a href="http://www.books.ru/shop/books/646220">http://www.books.ru/shop/books/646220</a><br />Потом будете меня благодарить до конца дней. А мне будет приятно <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /> Серьезно. Книжка хорошая. Хватит надолго.</p>]]></description>
			<author><![CDATA[null@example.com (zhevak)]]></author>
			<pubDate>Fri, 04 Mar 2011 14:35:02 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=152569#p152569</guid>
		</item>
		<item>
			<title><![CDATA[Re: Внутренние функции в си не работают с переменными]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=152542#p152542</link>
			<description><![CDATA[<p>Спасибо, с линкованием разобрался!<br />Еще вопрос: мне нужно на Си представить время в формате времени -&nbsp; hh:mm:ss&nbsp; , например 21:15:08..., (в исходных данных время в числовом формате (double) и не зависит от текущего времени);<br />в VB к примеру есть&nbsp; функция <strong>format</strong>&nbsp; , где можно задать нужный формат для преобразования времени в числовом формате в формат <strong>long time</strong>. В Си я подобной функции не нашел, пришлось придумывать свою, но думаю знатоки Си могли бы подсказать&nbsp; как оптимально преобразовать время из числового формата в формат времени и наоборот.&nbsp; &nbsp; &nbsp;<br />Как допустим в Excel :&nbsp; &nbsp;Формат - Ячейки&nbsp; -&nbsp; Дата/Время...</p>]]></description>
			<author><![CDATA[null@example.com (pelejuy)]]></author>
			<pubDate>Fri, 04 Mar 2011 13:19:27 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=152542#p152542</guid>
		</item>
		<item>
			<title><![CDATA[Re: Внутренние функции в си не работают с переменными]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=151127#p151127</link>
			<description><![CDATA[<div class="quotebox"><cite>pelejuy пишет:</cite><blockquote><p>Я в Си&nbsp; начинающий, подскажите пожалуйста, как это реализовать практически (хорошо бы с примером).</p></blockquote></div><p><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">ksu@ksu:~$ cat fp.c <br />#include &lt;stdio.h&gt;<br />#include &lt;math.h&gt;</p><p>int main()<br />{<br />&nbsp; &nbsp; double x = 0.5;<br />&nbsp; &nbsp; double y = atanf(x);<br />&nbsp; &nbsp; printf(&quot;atanf(%f) == %f\n&quot;, x, y);<br />&nbsp; &nbsp; return 0;<br />}<br />ksu@ksu:~$ gcc -o fp fp.c <br />/tmp/ccPol6tT.o: In function `main&#039;:<br />fp.c:(.text+0x35): undefined reference to `atanf&#039;<br />collect2: выполнение ld завершилось с кодом возврата 1<br />ksu@ksu:~$ gcc -lm -o fp fp.c <br />ksu@ksu:~$ ./fp<br />atanf(0.500000) == 0.463648<br /></div><br />мой совет: начинайте с консоли. не наступайте на те-же грабли, которые несколько лет били меня по башке (когда я пользовался MSVC, т.к. в венде нет нормальной консоли).</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Tue, 01 Mar 2011 09:45:11 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=151127#p151127</guid>
		</item>
		<item>
			<title><![CDATA[Re: Внутренние функции в си не работают с переменными]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=151122#p151122</link>
			<description><![CDATA[<div class="quotebox"><cite>drBatty пишет:</cite><blockquote><p><span class="bbu">такая ошибка возникает, если вы линкуете без опции -lm, это подключение математической библиотеки.</span></p></blockquote></div><p>Я в Си&nbsp; начинающий, подскажите пожалуйста, как это реализовать практически (хорошо бы с примером).</p>]]></description>
			<author><![CDATA[null@example.com (pelejuy)]]></author>
			<pubDate>Tue, 01 Mar 2011 09:24:55 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=151122#p151122</guid>
		</item>
		<item>
			<title><![CDATA[Re: Внутренние функции в си не работают с переменными]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=151117#p151117</link>
			<description><![CDATA[<div class="quotebox"><cite>man atan пишет:</cite><blockquote><p>ATAN(3)&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Linux Programmer&#039;s Manual&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ATAN(3)</p><p>NAME<br />&nbsp; &nbsp; &nbsp; &nbsp;atan, atanf, atanl - arc tangent function</p><p>SYNOPSIS<br />&nbsp; &nbsp; &nbsp; &nbsp;#include &lt;math.h&gt;</p><p>&nbsp; &nbsp; &nbsp; &nbsp;double atan(double x);<br />&nbsp; &nbsp; &nbsp; &nbsp;float atanf(float x);<br />&nbsp; &nbsp; &nbsp; &nbsp;long double atanl( long double x);</p><p>&nbsp; &nbsp; &nbsp; &nbsp;<strong>Link with -lm.</strong></p></blockquote></div><p>такая ошибка возникает, если вы линкуете без опции -lm, это подключение математической библиотеки.</p><div class="quotebox"><cite>pelejuy пишет:</cite><blockquote><p>Ошибка появляется, когда в качестве аргумента функции указываю переменную, с константами ошибки не возникает.</p></blockquote></div><p>потому-что синус от константы == константа. Её вычисляет компилятор во время компиляции. Во время работы это не нужно, и если в коде все функции от констант, то и считать ничего не нужно. И не нужна мат. либа.</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Tue, 01 Mar 2011 09:10:52 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=151117#p151117</guid>
		</item>
		<item>
			<title><![CDATA[Re: Внутренние функции в си не работают с переменными]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=151054#p151054</link>
			<description><![CDATA[<div class="codebox"><pre><code>#include &lt;math.h&gt;
#include &lt;stdio.h&gt;


       int main(void) {
    puts(&quot;Р’РІРµРґРёС‚Рµ С‚РµРєСЃС‚&quot;);
    int rn, hh, mm, ss, zsh, shg, shm, zd, dg, dm, R;
    double ARG, ARC, kor, razn;
    double SHR, DOLR;
          scanf(&quot;%*u %2u%*u %2u %2u %2u %*u %1u %3u %2u %1u %3u %2u&quot; , &amp;rn, &amp;hh, &amp;mm, &amp;ss, &amp;zsh, &amp;shg, &amp;shm, &amp;zd, &amp;dg, &amp;dm);


if (zsh &gt; 2)
    SHR = (shg + (double)shm / 60) / 180 * 3.14159265358979;
else
    SHR=(-shg - (double)shm / 60) / 180 * 3.14159265358979;
if (zd &gt; 2)
    DOLR=(dg + (double)dm / 60) / 180 * 3.14159265358979;
else
    DOLR=(-dg - (double)dm / 60) / 180 * 3.14159265358979;

/*printf(&quot;%f %f\n&quot; , SHR, DOLR);*/

        razn = DOLR - 1.874532;
        double aa = sin(1.154374);
        double bb = sin(SHR);
        double cc = cos(1.154374);
        double dd = cos(SHR);
        double ee = cos(razn);

        ARG = aa*bb+cc*dd*ee;
        kor = (-ARG * ARG) + 1;
        ARC = atan(-ARG / sqrt(kor)) + 2 * atan(1);

           R = ARC * 180 / 3.14159265358979 * 111.1;
        printf(&quot;%u&quot; , R);

              return 0;
        }</code></pre></div><p>Пока копировал код,- заработало!, - восстановил параметры по умолчанию..., до этого явно прописывал пути к файлам include, менял их с разных ide...<br />Спасибо , что быстро откликнулись!</p>]]></description>
			<author><![CDATA[null@example.com (pelejuy)]]></author>
			<pubDate>Tue, 01 Mar 2011 01:14:19 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=151054#p151054</guid>
		</item>
		<item>
			<title><![CDATA[Re: Внутренние функции в си не работают с переменными]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=151050#p151050</link>
			<description><![CDATA[<p>код в студию.</p>]]></description>
			<author><![CDATA[null@example.com (Fat-Zer)]]></author>
			<pubDate>Tue, 01 Mar 2011 00:39:56 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=151050#p151050</guid>
		</item>
		<item>
			<title><![CDATA[Внутренние функции в си не работают с переменными]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=151049#p151049</link>
			<description><![CDATA[<p>Суть проблемы: пишу программу на Си в Eclipse (на Mandriva), компилятор выдает ошибку <span style="color: red">undefined referense to &#039;sin&#039; (cos, atan, sqrt)</span>. Ошибка появляется, когда в качестве аргумента функции указываю переменную, с константами ошибки не возникает. <br />Использую include math.h и ctdio.h, может быть нужно что-то еще? <br />Если кто-то сталкивался, подскажите!<br />Ошибка повторяется и при использовании компилятора Eclipse и при компилировании в терминале.</p>]]></description>
			<author><![CDATA[null@example.com (pelejuy)]]></author>
			<pubDate>Tue, 01 Mar 2011 00:23:47 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=151049#p151049</guid>
		</item>
	</channel>
</rss>
