<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
	<id>https://wiki.merenienergie.cz/subdom/wiki/index.php?action=history&amp;feed=atom&amp;title=FULL-C%3A_64_bit</id>
	<title>FULL-C: 64 bit - Historie editací</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.merenienergie.cz/subdom/wiki/index.php?action=history&amp;feed=atom&amp;title=FULL-C%3A_64_bit"/>
	<link rel="alternate" type="text/html" href="https://wiki.merenienergie.cz/subdom/wiki/index.php?title=FULL-C:_64_bit&amp;action=history"/>
	<updated>2026-06-13T18:00:07Z</updated>
	<subtitle>Historie editací této stránky</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://wiki.merenienergie.cz/subdom/wiki/index.php?title=FULL-C:_64_bit&amp;diff=705&amp;oldid=prev</id>
		<title>Adamn v 17. 11. 2022, 15:34</title>
		<link rel="alternate" type="text/html" href="https://wiki.merenienergie.cz/subdom/wiki/index.php?title=FULL-C:_64_bit&amp;diff=705&amp;oldid=prev"/>
		<updated>2022-11-17T15:34:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;cs&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Starší verze&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Verze z 17. 11. 2022, 15:34&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l13&quot; &gt;Řádek 13:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 13:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;__TOC__&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;__NOTOC__&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Detaily ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Detaily ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l28&quot; &gt;Řádek 28:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 28:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Tisknutí lze provádět pomocí sprintf/snprintf/printf.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Tisknutí lze provádět pomocí sprintf/snprintf/printf.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;SDS ví, jaký typ jste definovali &lt;/del&gt;(&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;bez &lt;/del&gt;nebo &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;se znaménkem&lt;/del&gt;) a &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;podle toho provede &lt;/del&gt;tisk.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Vždy musíte správně použít &amp;quot;u&amp;quot; nebo &amp;quot;d&amp;quot; podle znaménka &lt;/ins&gt;(&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;unsigned &lt;/ins&gt;nebo &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;signed&lt;/ins&gt;)&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, &lt;/ins&gt;a &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;současně vždy uvést modifikátor délky &amp;quot;ll&amp;quot; (64-bit). Tedy &amp;quot;%lld&amp;quot; pro &lt;/ins&gt;tisk &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;typu int64_t&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Takže:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Takže:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l36&quot; &gt;Řádek 36:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 36:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  hodnota64 = 1234;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  hodnota64 = 1234;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  printf(&amp;quot;hodnota je %&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;u &lt;/del&gt;\n&amp;quot;, hodnota64);&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  printf(&amp;quot;hodnota je %&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;llu &lt;/ins&gt;\n&amp;quot;, hodnota64);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;nebo&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;nebo&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l44&quot; &gt;Řádek 44:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 44:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  hodnota64sig = -1234;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  hodnota64sig = -1234;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  printf(&amp;quot;hodnota je %&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;d &lt;/del&gt;\n&amp;quot;, hodnota64sig);&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  printf(&amp;quot;hodnota je %&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;lld &lt;/ins&gt;\n&amp;quot;, hodnota64sig);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Všimněte si, že jsme použili buď %&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;d &lt;/del&gt;nebo %&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;u&lt;/del&gt;, právě přesně podle toho, jestli je to int64_t nebo uint64_t.  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Všimněte si, že jsme použili buď %&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;lld &lt;/ins&gt;nebo %&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;llu&lt;/ins&gt;, právě přesně podle toho, jestli je to int64_t nebo uint64_t.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ještě lze použít %x pro hexa výpis (ten vypíše všech 64bitů tak jak jsou fyzicky v paměti, tady se na znaménka nehraje, viz také poznámka dále).&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ještě lze použít %x pro hexa výpis (ten vypíše všech 64bitů tak jak jsou fyzicky v paměti, tady se na znaménka nehraje, viz také poznámka dále).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l59&quot; &gt;Řádek 59:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 59:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  hodnota64 = 1234;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  hodnota64 = 1234;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  printf(&amp;quot;hodnota je %&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;d &lt;/del&gt;\n&amp;quot;, (int64_t) hodnota64); // vytiskne 1234&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  printf(&amp;quot;hodnota je %&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;lld &lt;/ins&gt;\n&amp;quot;, (int64_t) hodnota64); // vytiskne 1234&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l122&quot; &gt;Řádek 122:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 122:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  x *= 1000000000;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  x *= 1000000000;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  printf(&amp;quot;hodnota = %&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;u &lt;/del&gt;\n&amp;quot;, x); // vytiskne číslo 1024000000000 což je delší než 32bitů, takže to '''funguje'''  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  printf(&amp;quot;hodnota = %&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;llu &lt;/ins&gt;\n&amp;quot;, x); // vytiskne číslo 1024000000000 což je delší než 32bitů, takže to '''funguje'''  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  (pro info: v hexa tvaru to je: 0xEE6B280000).&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  (pro info: v hexa tvaru to je: 0xEE6B280000).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Jak snadné.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Jak snadné.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Adamn</name></author>
	</entry>
	<entry>
		<id>https://wiki.merenienergie.cz/subdom/wiki/index.php?title=FULL-C:_64_bit&amp;diff=144&amp;oldid=prev</id>
		<title>Adamn: Založena nová stránka s textem „ Tato stránka popisuje programovací jazyk '''FULL-C''', který je dostupný na vybraných zařízeních SDS.   Některá zařízení používají SDS-C,…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.merenienergie.cz/subdom/wiki/index.php?title=FULL-C:_64_bit&amp;diff=144&amp;oldid=prev"/>
		<updated>2021-03-28T16:54:27Z</updated>

		<summary type="html">&lt;p&gt;Založena nová stránka s textem „ Tato stránka popisuje programovací jazyk &amp;#039;&amp;#039;&amp;#039;FULL-C&amp;#039;&amp;#039;&amp;#039;, který je dostupný na vybraných zařízeních SDS.   Některá zařízení používají SDS-C,…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt; Tato stránka popisuje programovací jazyk '''FULL-C''', který je dostupný na vybraných zařízeních SDS. &lt;br /&gt;
 Některá zařízení používají SDS-C, pro který máme návody jinde na této WiKi.&lt;br /&gt;
&lt;br /&gt;
== FULL-C a podpora 64 bitových čísel ==&lt;br /&gt;
&lt;br /&gt;
Nová verze FULL-C pracuje nejen s 32bit čísly (int, long, nebo menší), ale také s 64bit čísly.&lt;br /&gt;
&lt;br /&gt;
Použití 64bit je nezbytné v řadě úkolů, např. počítadla impulsů, nebo při provádění výpočtů, kdy mezivýsledky jsou větší než co by se do 32bit čísel vlezlo.&lt;br /&gt;
&lt;br /&gt;
64bit čísla lze také výhodně využít pro fixed-point aritmetiku, pokud nám nestačí přesnost typu ''float'' (32bit), který SDS nabízí.&lt;br /&gt;
&lt;br /&gt;
Pozor, počítání s 64bit čísly je jemně (nezřetelně, ale přece) pomalejší než nativní použití 32bit čísel či floatu, ale to je nakonec jen nepodstatné upozornění. A samozřejmě zaberou 8 bajtů paměti, oproti 4 bajtům pro 32bit čísla. Ale to je jasné a to nakonec chceme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Detaily ==&lt;br /&gt;
&lt;br /&gt;
Deklarace je možná pouze pomocí uint64_t nebo int64_t :&lt;br /&gt;
&lt;br /&gt;
 // 64bit bez znaménka&lt;br /&gt;
 uint64_t u64;&lt;br /&gt;
 &lt;br /&gt;
 // 64bit se znaménkem&lt;br /&gt;
 int64_t i64;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tisknutí lze provádět pomocí sprintf/snprintf/printf.&lt;br /&gt;
&lt;br /&gt;
SDS ví, jaký typ jste definovali (bez nebo se znaménkem) a podle toho provede tisk.&lt;br /&gt;
&lt;br /&gt;
Takže:&lt;br /&gt;
&lt;br /&gt;
 uint64_t hodnota64;&lt;br /&gt;
 &lt;br /&gt;
 hodnota64 = 1234;&lt;br /&gt;
 &lt;br /&gt;
 printf(&amp;quot;hodnota je %u \n&amp;quot;, hodnota64);&lt;br /&gt;
&lt;br /&gt;
nebo&lt;br /&gt;
&lt;br /&gt;
 int64_t hodnota64sig;&lt;br /&gt;
 &lt;br /&gt;
 hodnota64sig = -1234;&lt;br /&gt;
 &lt;br /&gt;
 printf(&amp;quot;hodnota je %d \n&amp;quot;, hodnota64sig);&lt;br /&gt;
&lt;br /&gt;
Všimněte si, že jsme použili buď %d nebo %u, právě přesně podle toho, jestli je to int64_t nebo uint64_t. &lt;br /&gt;
&lt;br /&gt;
Ještě lze použít %x pro hexa výpis (ten vypíše všech 64bitů tak jak jsou fyzicky v paměti, tady se na znaménka nehraje, viz také poznámka dále).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Speciality ==&lt;br /&gt;
&lt;br /&gt;
Lze použít přetypování, ale musíte tomu rozumět. Příklad tisku 64bit čísla, které je původně bez znaméka, jako číslo se znaménkem :&lt;br /&gt;
&lt;br /&gt;
 uint64_t hodnota64;&lt;br /&gt;
 &lt;br /&gt;
 hodnota64 = 1234;&lt;br /&gt;
 &lt;br /&gt;
 printf(&amp;quot;hodnota je %d \n&amp;quot;, (int64_t) hodnota64); // vytiskne 1234&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ale:&lt;br /&gt;
&lt;br /&gt;
 uint64_t hodnota64;&lt;br /&gt;
 &lt;br /&gt;
 hodnota64 = 0x8FFFFFFF;&lt;br /&gt;
 &lt;br /&gt;
 printf(&amp;quot;hodnota je %d \n&amp;quot;, (int64_t) hodnota64); // vytiskne -1879048193 &lt;br /&gt;
&lt;br /&gt;
Takže pozor, ať nejste zmateni. &lt;br /&gt;
&lt;br /&gt;
V 64bit je např. -1 (signed) fyzicky (v paměti kde proměnná leží) reprezentována jako 0xFFFFFFFFFFFFFFFF (unsigned) atd. viz následující tabulka:&lt;br /&gt;
&lt;br /&gt;
  skutečná binární hodnota         | 32-bit signed | 32-bit unsigned | skutečná binární hodnota                                         | 64-bit signed |    64-bit unsigned |&lt;br /&gt;
  (32-bit)                         | FC signed int |  FC unsiged int | (64-bit)                                                         |    FC int64_t |        FC uint64_t |&lt;br /&gt;
 ----------------------------------+---------------+-----------------+------------------------------------------------------------------+---------------+--------------------+&lt;br /&gt;
  00000000000000000000000000000000 |             0 |               0 | 0000000000000000000000000000000000000000000000000000000000000000 |             0 |                  0 |&lt;br /&gt;
  00000000000000000000000000000001 |             1 |               1 | 0000000000000000000000000000000000000000000000000000000000000001 |             1 |                  1 | &lt;br /&gt;
  00000000000000001111111111111111 |         65535 |           65535 | 0000000000000000000000000000000000000000000000001111111111111111 |         65535 |              65535 |&lt;br /&gt;
  01111111111111111111111111111111 |    2147483647 |      2147483647 | 0000000000000000000000000000000001111111111111111111111111111111 |    2147483647 |         2147483647 |&lt;br /&gt;
  10000000000000000000000000000000 |   -2147483648 |      2147483648 | 1111111111111111111111111111111110000000000000000000000000000000 |   -2147483648 | 0xFFFFFFFF80000000 |&lt;br /&gt;
  10000000000000000000000000000001 |   -2147483647 |      2147483649 | 1111111111111111111111111111111110000000000000000000000000000001 |   -2147483647 | 0xFFFFFFFF80000001 |&lt;br /&gt;
  10000000000000001111111111111111 |   -2147418113 |      2147549183 | 1111111111111111111111111111111110000000000000001111111111111111 |   -2147418113 | 0xFFFFFFFF8000FFFF |&lt;br /&gt;
  11111111111111111111111111111111 |            -1 |      4294967295 | 1111111111111111111111111111111111111111111111111111111111111111 |            -1 | 0xFFFFFFFFFFFFFFFF |&lt;br /&gt;
&lt;br /&gt;
Zkuste si to sami (např. v nějaké vhodné Kalkulačce) a uvidíte sami.&lt;br /&gt;
&lt;br /&gt;
== Pozor na nastavování z 32bit do 64bit ==&lt;br /&gt;
&lt;br /&gt;
Pozor na to, jak jsou v jednotlivých typech (32bit oproti 64bit) reprezentovány '''záporná''' čísla.&lt;br /&gt;
&lt;br /&gt;
Příklad:&lt;br /&gt;
 unsigned int hodnota32;&lt;br /&gt;
 &lt;br /&gt;
 hodnota32 = 0x8FFFFFFF // což také odpovídá tomuto: -1879048193 (signed)&lt;br /&gt;
 &lt;br /&gt;
 int64_t h64s;&lt;br /&gt;
 &lt;br /&gt;
 h64s = hodnota32; &lt;br /&gt;
 &lt;br /&gt;
 // a pozor - h64s je teď uloženo v paměti jako: ( 0xFFFFFFFF8FFFFFFF unsigned ) což odpovídá (-1879048193 signed).&lt;br /&gt;
&lt;br /&gt;
Nenechte se zmást - je to správně. Nastudujte si to. Jde jen o to si uvědomit jak to vše funguje.&lt;br /&gt;
&lt;br /&gt;
Proto kde můžete, používejte čistě a jen uint64_t a vyhnete se tomu (ale nebudete mít záporný rozsah, což často nevadí, a pak jste v klidu a nemusíte na toto myslet).&lt;br /&gt;
&lt;br /&gt;
Samozřejmě pro ''if'' (pro podmínky) platí to samé co pro 32bit čísla - if porovnává dvě strany, např. if (a&amp;lt;b) { něco(); }; . Pokud se porovnávají dvě strany a obě jsou signed, výsledek a proces porovnání je také signed. Ale jakmile je jedno z nich (nebo obě strany) unsigned, pak se všechny strany nejprve převedou na unsigned, a pak se provede porovnání a výsledek je také unsigned. Toto je dle C standardu, a už se na tom spousta vývojářů spálilo, dejte si proto pozor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Omezení při inicializaci 64bit čísla ==&lt;br /&gt;
&lt;br /&gt;
V současné verzi FULL-C umí SDS jen 32bitové konstanty. To se v nové verzi upraví a bude umět i 64bit konstanty, ale teď je ještě neumí.&lt;br /&gt;
&lt;br /&gt;
Řešení je snadné, použijte &amp;quot;výpočet&amp;quot; pro nastavení výchozí hodnoty (je-li třeba nějaká nenulová).&lt;br /&gt;
&lt;br /&gt;
 uint64_t x;&lt;br /&gt;
 &lt;br /&gt;
 x = 1024; // toto je zápis 32bit konstanty do uint64_t&lt;br /&gt;
 &lt;br /&gt;
 x *= 1000000000;&lt;br /&gt;
 &lt;br /&gt;
 printf(&amp;quot;hodnota = %u \n&amp;quot;, x); // vytiskne číslo 1024000000000 což je delší než 32bitů, takže to '''funguje''' &lt;br /&gt;
 (pro info: v hexa tvaru to je: 0xEE6B280000).&lt;br /&gt;
&lt;br /&gt;
Jak snadné.&lt;/div&gt;</summary>
		<author><name>Adamn</name></author>
	</entry>
</feed>