<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="http://192.168.180.206:8001/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://192.168.180.206:8001/feed.php">
        <title>wiki.niziak.spox.org - programming:c</title>
        <description></description>
        <link>http://192.168.180.206:8001/</link>
        <image rdf:resource="http://192.168.180.206:8001/_media/wiki:dokuwiki.svg" />
       <dc:date>2026-05-13T07:46:40+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://192.168.180.206:8001/programming:c:atomic?rev=1738568531&amp;do=diff"/>
                <rdf:li rdf:resource="http://192.168.180.206:8001/programming:c:ceedling?rev=1619103333&amp;do=diff"/>
                <rdf:li rdf:resource="http://192.168.180.206:8001/programming:c:externals?rev=1610903877&amp;do=diff"/>
                <rdf:li rdf:resource="http://192.168.180.206:8001/programming:c:preprocesor?rev=1762004771&amp;do=diff"/>
                <rdf:li rdf:resource="http://192.168.180.206:8001/programming:c:preprocessor?rev=1762004823&amp;do=diff"/>
                <rdf:li rdf:resource="http://192.168.180.206:8001/programming:c:printf?rev=1716311850&amp;do=diff"/>
                <rdf:li rdf:resource="http://192.168.180.206:8001/programming:c:start?rev=1716533624&amp;do=diff"/>
                <rdf:li rdf:resource="http://192.168.180.206:8001/programming:c:unity?rev=1619109090&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://192.168.180.206:8001/_media/wiki:dokuwiki.svg">
        <title>wiki.niziak.spox.org</title>
        <link>http://192.168.180.206:8001/</link>
        <url>http://192.168.180.206:8001/_media/wiki:dokuwiki.svg</url>
    </image>
    <item rdf:about="http://192.168.180.206:8001/programming:c:atomic?rev=1738568531&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-03T07:42:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>stdatomic.h</title>
        <link>http://192.168.180.206:8001/programming:c:atomic?rev=1738568531&amp;do=diff</link>
        <description>stdatomic.h

difference between standard&#039;s atomic bool and atomic flag

atomic_flag

	&quot; atomic_flag is an atomic boolean type variable that is guaranteed to be lock-free. 
 It is used to provide synchronization within threads in programs. Unlike atomic_bool,
 atomic_flag does not provide load or store operations.</description>
    </item>
    <item rdf:about="http://192.168.180.206:8001/programming:c:ceedling?rev=1619103333&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-22T14:55:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Ceedling</title>
        <link>http://192.168.180.206:8001/programming:c:ceedling?rev=1619103333&amp;do=diff</link>
        <description>Ceedling

	*  support files  - additional C files needed for tests but not for project (not added to project src).

Hints

	*  Orgranize code into very small functional modules.
	*  Make separate .h for each .c module.
	*  Try to create separate .h for types and separate for function prototypes (it helps later with mocking)</description>
    </item>
    <item rdf:about="http://192.168.180.206:8001/programming:c:externals?rev=1610903877&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-17T17:17:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>External sources</title>
        <link>http://192.168.180.206:8001/programming:c:externals?rev=1610903877&amp;do=diff</link>
        <description>External sources

Liblaries / Projects / References

MESH networks

	*  contiki / contiki-ng
	*  RadioHead Packet Radio library for embedded microprocessors</description>
    </item>
    <item rdf:about="http://192.168.180.206:8001/programming:c:preprocesor?rev=1762004771&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-01T13:46:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>C preprocessor</title>
        <link>http://192.168.180.206:8001/programming:c:preprocesor?rev=1762004771&amp;do=diff</link>
        <description>C preprocessor</description>
    </item>
    <item rdf:about="http://192.168.180.206:8001/programming:c:preprocessor?rev=1762004823&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-01T13:47:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>C preprocessor</title>
        <link>http://192.168.180.206:8001/programming:c:preprocessor?rev=1762004823&amp;do=diff</link>
        <description>C preprocessor</description>
    </item>
    <item rdf:about="http://192.168.180.206:8001/programming:c:printf?rev=1716311850&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-05-21T17:17:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>printf</title>
        <link>http://192.168.180.206:8001/programming:c:printf?rev=1716311850&amp;do=diff</link>
        <description>printf

Cross platform format string


#include &lt;stdint.h&gt;    // for uint64_t
#include &lt;inttypes.h&gt;  // for PRIu64

size_t my_variable;
printf(&quot;%&quot; PRIu64 &quot;\n&quot;, (uint64_t)my_variable);


&lt;https://www.cplusplus.com/reference/cinttypes/&gt;
&lt;https://stackoverflow.com/questions/174612/cross-platform-format-string-for-variables-of-type-size-t/174674#174674&gt;

Float padding

The field width includes the decimal point and the fractional portion (and the sign, if it&#039;s negative).</description>
    </item>
    <item rdf:about="http://192.168.180.206:8001/programming:c:start?rev=1716533624&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-05-24T06:53:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>C</title>
        <link>http://192.168.180.206:8001/programming:c:start?rev=1716533624&amp;do=diff</link>
        <description>C

printf format check


extern int my_printf (void *my_object, const char *my_format, ...) __attribute__ ((format (printf, 2, 3)));


volatile

	*  volatile uint8_t *foo; -  tells the compiler the memory being pointed to is volatile
		*  uint8_t volatile * p_ledreg = 0x10000000;</description>
    </item>
    <item rdf:about="http://192.168.180.206:8001/programming:c:unity?rev=1619109090&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-22T16:31:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Unity</title>
        <link>http://192.168.180.206:8001/programming:c:unity?rev=1619109090&amp;do=diff</link>
        <description>Unity

&lt;https://github.com/ThrowTheSwitch/Unity/tree/master/examples&gt;

TEST_ASSERT_HEX16_ARRAY_WITHIN(delta, expected, actual, num_elements)</description>
    </item>
</rdf:RDF>
