<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Other stuff | Learn C Games Programming Blog</title>
	<atom:link href="https://learncgames.com/category/other-stuff/feed/" rel="self" type="application/rss+xml" />
	<link>https://learncgames.com</link>
	<description>A blog about C, programming games and my ebook(s).</description>
	<lastBuildDate>Thu, 04 Sep 2025 19:14:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://learncgames.com/wp-content/uploads/2020/03/cropped-favicon-32x32.png</url>
	<title>Other stuff | Learn C Games Programming Blog</title>
	<link>https://learncgames.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">181446779</site>	<item>
		<title>Great mystery #1 solved!</title>
		<link>https://learncgames.com/great-mystery-1-solved/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=great-mystery-1-solved</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Thu, 04 Sep 2025 19:00:10 +0000</pubDate>
				<category><![CDATA[Other stuff]]></category>
		<category><![CDATA[Techniques]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=3457</guid>

					<description><![CDATA[<p>It was kind of silly. I installed Debian 13 in hyper-V, just to see how different it is from Ubuntu.  Like Ubuntu, it starts in a default size. I looked in the settings and there was a Displays there so I tried it and got the screen resized to full screen size. So I then [&#8230;]</p>
The post <a href="https://learncgames.com/great-mystery-1-solved/">Great mystery #1 solved!</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<p>It was kind of silly. I installed Debian 13 in hyper-V, just to see how different it is from Ubuntu.  Like Ubuntu, it starts in a default size. I looked in the settings and there was a Displays there so I tried it and got the screen resized to full screen size.</p>
<p>So I then went back to Ubuntu and tried that, and it worked. I believe that what helped was having guest services ticked in the Hyper-v settings.</p>
<p><img fetchpriority="high" decoding="async" class="alignleft size-full wp-image-3458" src="https://learncgames.com/wp-content/uploads/2025/09/hypr-vsettings.png" alt="Hyper-V settings" width="454" height="558" srcset="https://learncgames.com/wp-content/uploads/2025/09/hypr-vsettings.png 454w, https://learncgames.com/wp-content/uploads/2025/09/hypr-vsettings-244x300.png 244w" sizes="(max-width: 454px) 100vw, 454px" /> <img decoding="async" class="alignleft size-full wp-image-3459" src="https://learncgames.com/wp-content/uploads/2025/09/hyper-v-displays.png" alt="Display settings in Ubuntu" width="1032" height="615" srcset="https://learncgames.com/wp-content/uploads/2025/09/hyper-v-displays.png 1032w, https://learncgames.com/wp-content/uploads/2025/09/hyper-v-displays-300x179.png 300w, https://learncgames.com/wp-content/uploads/2025/09/hyper-v-displays-1024x610.png 1024w, https://learncgames.com/wp-content/uploads/2025/09/hyper-v-displays-768x458.png 768w" sizes="(max-width: 1032px) 100vw, 1032px" /></p>The post <a href="https://learncgames.com/great-mystery-1-solved/">Great mystery #1 solved!</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3457</post-id>	</item>
		<item>
		<title>The fix for yesterday&#8217;s problem</title>
		<link>https://learncgames.com/the-fix-for-yesterdays-problem/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-fix-for-yesterdays-problem</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Tue, 18 Feb 2025 00:05:16 +0000</pubDate>
				<category><![CDATA[Other stuff]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=3304</guid>

					<description><![CDATA[<p>Is that the use needs to specify file::module_name::&#8230; So to get it to compile, it needed these two lines. Note I changed the filename and the mod filename to poker_lib. pub mod poker_lib; use poker_lib::poker_lib::{Card, Game, Player};</p>
The post <a href="https://learncgames.com/the-fix-for-yesterdays-problem/">The fix for yesterday’s problem</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<p><img decoding="async" class="alignleft size-medium wp-image-3305" src="https://learncgames.com/wp-content/uploads/2025/02/thefix-300x300.png" alt="Fancy banner showing The Fix" width="300" height="300" srcset="https://learncgames.com/wp-content/uploads/2025/02/thefix-300x300.png 300w, https://learncgames.com/wp-content/uploads/2025/02/thefix-150x150.png 150w, https://learncgames.com/wp-content/uploads/2025/02/thefix-768x768.png 768w, https://learncgames.com/wp-content/uploads/2025/02/thefix-250x250.png 250w, https://learncgames.com/wp-content/uploads/2025/02/thefix.png 1024w" sizes="(max-width: 300px) 100vw, 300px" />Is that the use needs to specify file::module_name::&#8230;</p>
<p>So to get it to compile, it needed these two lines. Note I changed the filename and the mod filename to poker_lib.</p>
<div></div>
<div>
<div>
<pre><code class="language-rust" data-line="">pub mod poker_lib;
use poker_lib::poker_lib::{Card, Game, Player};</code></pre>
</div>
</div>The post <a href="https://learncgames.com/the-fix-for-yesterdays-problem/">The fix for yesterday’s problem</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3304</post-id>	</item>
		<item>
		<title>SDL3 is officially out</title>
		<link>https://learncgames.com/sdl3-is-officially-out/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sdl3-is-officially-out</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Sun, 26 Jan 2025 00:05:27 +0000</pubDate>
				<category><![CDATA[Other stuff]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=3283</guid>

					<description><![CDATA[<p>SDL releases are few and far between so this is significant news. What&#8217;s new you ask? Well lots of things- best to read this page. It&#8217;s highly cross-platform, SDL officially supports Windows, macOS, Linux, iOS, and Android, and several other platforms.  It&#8217;s written in C, works natively with C++, and has bindings available for several [&#8230;]</p>
The post <a href="https://learncgames.com/sdl3-is-officially-out/">SDL3 is officially out</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<div class='__iawmlf-post-loop-links' style='display:none;' data-iawmlf-post-links='[{&quot;id&quot;:26,&quot;href&quot;:&quot;https:\/\/wiki.libsdl.org\/SDL3\/NewFeatures&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20250925190556\/https:\/\/wiki.libsdl.org\/SDL3\/NewFeatures&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 10:46:56&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-10 11:24:06&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-13 23:25:45&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-18 14:49:44&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-22 21:46:46&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-27 11:09:02&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-03 12:05:04&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-11 12:41:22&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-15 05:05:01&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-19 00:10:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-23 21:24:16&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-27 11:15:10&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-30 21:19:58&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-04 16:45:34&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-07 20:01:26&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-13 09:28:09&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-17 09:33:27&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-20 17:32:46&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-20 17:32:46&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:27,&quot;href&quot;:&quot;https:\/\/crates.io\/crates\/sdl3&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20250626145939\/https:\/\/crates.io\/crates\/sdl3&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 10:46:58&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-02-10 15:44:49&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-02-14 03:34:21&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-02-18 14:49:43&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-02-22 21:46:46&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-02-27 11:09:01&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-03-04 10:25:16&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-03-12 08:09:51&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-03-16 18:28:23&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-03-23 21:24:16&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-03-27 11:15:11&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-03-30 21:19:58&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-04-04 16:45:33&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-04-07 20:01:28&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-04-13 11:04:02&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-04-17 09:33:30&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-04-20 17:32:47&quot;,&quot;http_code&quot;:404}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-20 17:32:47&quot;,&quot;http_code&quot;:404},&quot;process&quot;:&quot;done&quot;}]'></div>
<p><img decoding="async" class="alignleft wp-image-3286" src="https://learncgames.com/wp-content/uploads/2025/01/embossed-monitor-a8d145.svg" alt="SDL3 on a monitor created by Claude.asi" width="400" /></p>
<p>SDL releases are few and far between so this is significant news. What&#8217;s new you ask? Well lots of things- best to read <a title="Link to new features on SDL website." href="https://wiki.libsdl.org/SDL3/NewFeatures">this page</a>.</p>
<p>It&#8217;s highly cross-platform, SDL officially supports Windows, macOS, Linux, iOS, and Android, and several other platforms.  It&#8217;s written in C, works natively with C++, and has bindings available for several other languages, including C#, Python, and <a href="https://crates.io/crates/sdl3">Rust</a>.</p>
<p>One of the projects I&#8217;m working on is rewriting the Asteroids game into Rust with SDL3. I&#8217;ll publish more here as it proceeds.</p>The post <a href="https://learncgames.com/sdl3-is-officially-out/">SDL3 is officially out</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3283</post-id>	</item>
		<item>
		<title>It&#8217;s been a while</title>
		<link>https://learncgames.com/its-been-a-while/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=its-been-a-while</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Tue, 06 Aug 2024 23:01:44 +0000</pubDate>
				<category><![CDATA[Other stuff]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=3270</guid>

					<description><![CDATA[<p>I&#8217;ve decided that I&#8217;m going to learn Rust and as the SDL2 bindings are available for Rust, I&#8217;ll be doing a bit of rewriting C into Rust. I&#8217;ve always found that working on some code is a good way to learn a programming language.</p>
The post <a href="https://learncgames.com/its-been-a-while/">It’s been a while</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_3271" aria-describedby="caption-attachment-3271" style="width: 144px" class="wp-caption alignleft"><a href="https://learncgames.com/wp-content/uploads/2024/08/rust-logo-blk.svg"><img loading="lazy" decoding="async" class="size-full wp-image-3271" src="https://learncgames.com/wp-content/uploads/2024/08/rust-logo-blk.svg" alt="Official Rust logo" width="144" height="144" /></a><figcaption id="caption-attachment-3271" class="wp-caption-text">Official Rust logo.</figcaption></figure>
<p>I&#8217;ve decided that I&#8217;m going to learn Rust and as the SDL2 bindings are available for Rust, I&#8217;ll be doing a bit of rewriting C into Rust. I&#8217;ve always found that working on some code is a good way to learn a programming language.</p>The post <a href="https://learncgames.com/its-been-a-while/">It’s been a while</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3270</post-id>	</item>
		<item>
		<title>Is Tiobe Index misinformation?</title>
		<link>https://learncgames.com/is-tiobe-index-misinformation/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=is-tiobe-index-misinformation</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Sun, 15 Jan 2023 00:00:05 +0000</pubDate>
				<category><![CDATA[C]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Other stuff]]></category>
		<category><![CDATA[rankings]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=3188</guid>

					<description><![CDATA[<p>Every month a new Tiobe Index is published purporting to show the most popular programming languages. Except, if you look at other programming language popularity surveys, lists etc, the Tiobe Index increasingly seems to be at odds with everybody else. Take the programming language C. As you can imagine I have a particular interest in [&#8230;]</p>
The post <a href="https://learncgames.com/is-tiobe-index-misinformation/">Is Tiobe Index misinformation?</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="alignleft size-medium wp-image-3195" src="https://learncgames.com/wp-content/uploads/2023/01/2094394-300x200.jpg" alt="news, false, concept" width="300" height="200" srcset="https://learncgames.com/wp-content/uploads/2023/01/2094394-300x200.jpg 300w, https://learncgames.com/wp-content/uploads/2023/01/2094394-1024x682.jpg 1024w, https://learncgames.com/wp-content/uploads/2023/01/2094394-768x512.jpg 768w, https://learncgames.com/wp-content/uploads/2023/01/2094394.jpg 1280w" sizes="auto, (max-width: 300px) 100vw, 300px" />Every month a new Tiobe Index is published purporting to show the most popular programming languages. Except, if you look at other programming language popularity surveys, lists etc, the Tiobe Index increasingly seems to be at odds with everybody else.</p>
<p>Take the programming language C. As you can imagine I have a particular interest in it. I was at first delighted when I saw it at #3 in the Tiobe Index. In fact, in their most recent index it is listed as the 2nd most popular programming language. Well that is just crazy. No matter how much I might want it, there is no way on Earth that it is the 2nd most popular programming language.</p>
<p>It&#8217;s not just me saying it. Let&#8217;s look at who else says it.</p>

<table id="tablepress-1" class="tablepress tablepress-id-1">
<thead>
<tr class="row-1">
	<th class="column-1">Site</th><th class="column-2">C's Ranking</th><th class="column-3">Comments</th>
</tr>
</thead>
<tbody class="row-striping row-hover">
<tr class="row-2">
	<td class="column-1"><a href="https://www.tiobe.com/tiobe-index/">Tiobe Index</a></td><td class="column-2">2</td><td class="column-3">Updated monthly</td>
</tr>
<tr class="row-3">
	<td class="column-1"><a href="https://octoverse.github.com/2022/top-programming-languages">GitHub Octoverse Programming languages</a></td><td class="column-2">9</td><td class="column-3">Annually- this is October 2022</td>
</tr>
<tr class="row-4">
	<td class="column-1"><a href="https://www.reddit.com/r/programming/wiki/faq/#wiki_what_language_reddits_are_there.3F">Reddit Programming languages</a></td><td class="column-2">10</td><td class="column-3">Subreddits for programming languages</td>
</tr>
<tr class="row-5">
	<td class="column-1"><a href="https://redmonk.com/sogrady/2022/10/20/language-rankings-6-22/">Red Monk Programming Language Rankings</a></td><td class="column-2">10</td><td class="column-3">June 2022. Updated every 6 months</td>
</tr>
<tr class="row-6">
	<td class="column-1"><a href="https://survey.stackoverflow.co/2022/#technology">StackOverflow developer survey</a></td><td class="column-2">11</td><td class="column-3">Annually</td>
</tr>
<tr class="row-7">
	<td class="column-1"><a href="https://www.statista.com/statistics/793628/worldwide-developer-survey-most-used-languages/#:~:text=As%20of%202022%2C%20JavaScript%20and,55%20percent%20using%20HTML%2FCSS.">Statista most used programming languages 2022</a></td><td class="column-2">11</td><td class="column-3"></td>
</tr>
<tr class="row-8">
	<td class="column-1"><a href="https://www.hackerrank.com/research/developer-skills/2023">Hackerrank Developer skills report 2023</a></td><td class="column-2">12</td><td class="column-3"></td>
</tr>
</tbody>
</table>
<!-- #tablepress-1 from cache -->
<p>There are other programming language lists or surveys but those show what I mean.  No one else has C anywhere that high. Here it&#8217;s in positions 9-12 with an average roughly around 10.5 if you exclude Tiobe or 9.3 if you don&#8217;t.  I think their methodology is flawed and biased by age. Older languages appear to carry more weight.</p>
<p>Never mind C, what about JavaScript? Everyone else has it in first place (except HackerRank who has it in 4th). Tiobe index has it in 7th. Misinformation is defined as “false information that is spread, regardless of intent to mislead.”. Maybe that&#8217;s a bit harsh but that&#8217;s how I regard the Tiobe Index.</p>The post <a href="https://learncgames.com/is-tiobe-index-misinformation/">Is Tiobe Index misinformation?</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3188</post-id>	</item>
		<item>
		<title>A New PC</title>
		<link>https://learncgames.com/a-new-pc/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=a-new-pc</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Thu, 07 Apr 2022 19:56:50 +0000</pubDate>
				<category><![CDATA[networking]]></category>
		<category><![CDATA[Other stuff]]></category>
		<category><![CDATA[resources]]></category>
		<category><![CDATA[new pc]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=3048</guid>

					<description><![CDATA[<p>Moving to a new PC can be a time consuming process. This is my 10th PC since 1989 and I&#8217;ve been accumulating files, old programs, websites, manuals etc. as I moved from PC to PC. My first PC had a 20 MB disk, the 2nd PC had a hard disk with 240 MB capacity. On [&#8230;]</p>
The post <a href="https://learncgames.com/a-new-pc/">A New PC</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<div class='__iawmlf-post-loop-links' style='display:none;' data-iawmlf-post-links='[{&quot;id&quot;:55,&quot;href&quot;:&quot;https:\/\/pixabay.com\/users\/geralt-9301\/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1307227&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260128125116\/https:\/\/pixabay.com\/users\/geralt-9301\/?utm_source=link-attribution&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 11:28:24&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-11 00:21:40&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-14 09:13:02&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-20 06:24:12&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-27 11:03:26&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-02 21:47:56&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-08 10:38:13&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-13 06:21:26&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-18 02:08:27&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-30 11:56:12&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-05 07:29:47&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-09 03:54:15&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-15 05:35:12&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-20 12:45:45&quot;,&quot;http_code&quot;:403}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-20 12:45:45&quot;,&quot;http_code&quot;:403},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:56,&quot;href&quot;:&quot;https:\/\/pixabay.com\/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1307227&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260205102120\/https:\/\/pixabay.com\/?utm_source=link-attribution&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 11:28:26&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-11 00:21:40&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-14 09:13:01&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-20 06:24:14&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-27 11:03:26&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-02 21:47:54&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-08 10:38:12&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-13 06:21:26&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-18 02:08:27&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-30 11:56:12&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-05 07:29:47&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-09 03:54:15&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-14 23:06:43&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-20 12:45:49&quot;,&quot;http_code&quot;:403}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-20 12:45:49&quot;,&quot;http_code&quot;:403},&quot;process&quot;:&quot;done&quot;}]'></div>
<figure id="attachment_3050" aria-describedby="caption-attachment-3050" style="width: 300px" class="wp-caption alignleft"><img loading="lazy" decoding="async" class="size-medium wp-image-3050" src="https://learncgames.com/wp-content/uploads/2022/04/monitor-g6c2205e5c_640-300x211.jpg" alt="Computer monitors" width="300" height="211" srcset="https://learncgames.com/wp-content/uploads/2022/04/monitor-g6c2205e5c_640-300x211.jpg 300w, https://learncgames.com/wp-content/uploads/2022/04/monitor-g6c2205e5c_640.jpg 640w" sizes="auto, (max-width: 300px) 100vw, 300px" /><figcaption id="caption-attachment-3050" class="wp-caption-text">Image by <a href="https://pixabay.com/users/geralt-9301/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1307227">Gerd Altmann</a> from <a href="https://pixabay.com/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1307227">Pixabay</a></figcaption></figure>
<p>Moving to a new PC can be a time consuming process. This is my 10th PC since 1989 and I&#8217;ve been accumulating files, old programs, websites, manuals etc. as I moved from PC to PC. My first PC had a 20 MB disk, the 2nd PC had a hard disk with 240 MB capacity. On my new PC it&#8217;s 10 TB and 1 TB SSD.</p>
<p>It&#8217;s another i7 but 11th Gen Intel(R) Core(TM) i7-11700K. Only 32 GB RAM for now as they didn&#8217;t have 64 GB in stock but the motherboard can go up to 128 GB.</p>
<p>I estimated that I had accumulated just over 2 TB of my stuff and once I got my new PC setup started the process of moving files across. 2 TB seems a lot but VMs under Hyper-V can easily eat up a few hundred GBs.</p>
<p>Both PCs had a gigabit network card and were plugged into a gigabit switch so what speed did it give me? 11 MB/S. That&#8217;s not gigabit speed which would be about 1000 MB/s but closer to 100 Mbs. Trouble was the switch was plugged into a router and I think that pulled things down. I borrowed a crossover cable. Setup both Pcs with static IP and connected them directly. That was much better and it was soon maxing out at 112 MBs.</p>
<p>Windows of course put its spoke in. If you are copying large files- anything over about 1 MB then it uses the full bandwidth but smaller files pull it down and I&#8217;d see as slow as KB/s speeds. So I&#8217;d have three or four files copying at the same time.</p>
<p>As well as just copying files to the new PC, I was cleaning up my old PC to sell it so I was either deleting stuff or moving it. Overall my total elapsed time was something like 28 hours over four days and evenings. Plus of course installing software (Visual Studio, VS Code, Android Studio, MS Office). It all takes time. Luckily I&#8217;ve been quite disciplined and kept all licences and serial numbers in an encrypted text file.</p>
<p>Then I discovered that my new PC&#8217;s video cards had different connectors. My old one had DVIs but this one I could only find an HDMI and 2 DisplayPorts. There was a DVI connector on the video card but the firm that did it put the card in the top slot and the DVI (2nd row) was covered up by a blanking plate! It&#8217;s a RTX 2060 card. I removed it and all was well.</p>
<p><img loading="lazy" decoding="async" class="alignleft size-full wp-image-3052" src="https://learncgames.com/wp-content/uploads/2022/04/rtx2060.jpg" alt="RTX 2060" width="450" height="150" srcset="https://learncgames.com/wp-content/uploads/2022/04/rtx2060.jpg 450w, https://learncgames.com/wp-content/uploads/2022/04/rtx2060-300x100.jpg 300w" sizes="auto, (max-width: 450px) 100vw, 450px" /></p>The post <a href="https://learncgames.com/a-new-pc/">A New PC</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3048</post-id>	</item>
		<item>
		<title>Is variable++ faster than ++variable?</title>
		<link>https://learncgames.com/is-variable-faster-than-variable/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=is-variable-faster-than-variable</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Fri, 19 Mar 2021 00:00:48 +0000</pubDate>
				<category><![CDATA[C]]></category>
		<category><![CDATA[Other stuff]]></category>
		<category><![CDATA[postinc]]></category>
		<category><![CDATA[preinc]]></category>
		<category><![CDATA[Timings]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=2908</guid>

					<description><![CDATA[<p>One of the things I as told when I learnt C++ and then later C was that a post-inc (i.e. variable++) was faster than a pre-inc i.e. ++variable. Frankly I&#8217;m not sure if it is really true but its not a difficult thing to test. Here&#8217;s a short program #include &#60;stdio.h&#62; #include &#34;hr_time.h&#34; #define NUMLOOPS [&#8230;]</p>
The post <a href="https://learncgames.com/is-variable-faster-than-variable/">Is variable++ faster than ++variable?</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<div class='__iawmlf-post-loop-links' style='display:none;' data-iawmlf-post-links='[{&quot;id&quot;:14,&quot;href&quot;:&quot;https:\/\/github.com\/David-H-Bolton\/LearnCOnLinux&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20250213114627\/https:\/\/github.com\/David-H-Bolton\/LearnCOnLinux&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 10:35:12&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-09 16:40:14&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-12 18:24:15&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-15 22:16:31&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-18 22:19:30&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-21 22:22:05&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-25 04:17:24&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-28 04:17:49&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-03 04:22:25&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-06 04:38:10&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-09 08:48:04&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-12 09:17:10&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-15 10:18:26&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-18 12:43:49&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-21 15:14:39&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-24 15:19:12&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-27 16:38:15&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-30 19:05:39&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-02 19:29:41&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-05 21:51:33&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-08 22:18:13&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-11 22:18:38&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-14 22:20:58&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-18 07:27:41&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-21 10:16:46&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-21 10:16:46&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;}]'></div>
<p><img loading="lazy" decoding="async" class="alignleft wp-image-2913 size-full" src="https://learncgames.com/wp-content/uploads/2021/03/timings-1.png" alt="Timings" width="382" height="378" srcset="https://learncgames.com/wp-content/uploads/2021/03/timings-1.png 382w, https://learncgames.com/wp-content/uploads/2021/03/timings-1-300x297.png 300w" sizes="auto, (max-width: 382px) 100vw, 382px" />One of the things I as told when I learnt C++ and then later C was that a post-inc (<em>i.e. variable++</em>) was faster than a pre-inc i.e. ++variable. Frankly I&#8217;m not sure if it is really true but its not a difficult thing to test.</p>
<p>Here&#8217;s a short program</p>
<pre><code class="language-c" data-line="">#include &lt;stdio.h&gt;
#include &quot;hr_time.h&quot;

#define NUMLOOPS 100000000

int main() {
  stopWatch s;
  startTimer(&amp;s);
  int j=0;
  for (int i=0;i&lt;NUMLOOPS;i++){
    ++j;
  }
  stopTimer(&amp;s);
  printf(&quot;PreInc = %10.5f\n&quot;,diff(&amp;s));

  startTimer(&amp;s);   
  j=0;
  for (int i=0;i&lt;NUMLOOPS;i++){
    j--;
  }
  stopTimer(&amp;s);
  printf(&quot;PostInc = %10.5f\n&quot;,diff(&amp;s));  
}</code></pre>
<p>You can get the siurce code including hr_time.h and .c from the timings.zip file on <a title="Link to Learn C on Linux on GitHub" href="https://github.com/David-H-Bolton/LearnCOnLinux" target="_blank" rel="nofollow noopener">GitHub</a>. I used VS Code with clang to build this on Ubuntu. Here is the tasks.json file to build it. It assumes that the file is in your workspace folder and creates a file called ex1. The timings.zip file contains the json files as well.</p>
<pre><code class="language-json" data-line="">{
    &quot;version&quot;: &quot;2.0.0&quot;,
    &quot;tasks&quot;: [
        {
            &quot;type&quot;: &quot;shell&quot;,
            &quot;label&quot;: &quot;clang build active file&quot;,
            &quot;command&quot;: &quot;/usr/bin/clang&quot;,
            &quot;args&quot;: [
                &quot;-g&quot;,
                &quot;${file}&quot;,&quot;${workspaceFolder}/hr_time.c&quot;,              
                &quot;-o&quot;,
                &quot;${fileDirname}/ex1&quot;,                
                &quot;-lm&quot;
            ],
            &quot;options&quot;: {
                &quot;cwd&quot;: &quot;/usr/bin&quot;
            },
            &quot;group&quot;: {
                &quot;kind&quot;: &quot;build&quot;,
                &quot;isDefault&quot;: true
            }
        }
    ]
}</code></pre>
<p>Ignore the first three runs which were for 10 million not 100 million. All do indeed show that <strong>post-inc</strong> is indeed faster. Not by a great margin but each of the last 100 million loops takes between 94% and 96% of the <strong>preinc</strong> time.</p>The post <a href="https://learncgames.com/is-variable-faster-than-variable/">Is variable++ faster than ++variable?</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2908</post-id>	</item>
		<item>
		<title>Cling &#8211; an interactive C++ interpreter</title>
		<link>https://learncgames.com/cling-an-interactive-c-interpreter/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cling-an-interactive-c-interpreter</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Wed, 17 Mar 2021 00:00:57 +0000</pubDate>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Other stuff]]></category>
		<category><![CDATA[interpreter]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=2897</guid>

					<description><![CDATA[<p>When I first learned to program back in 1976, I had a teletype and a BASIC interpreter. Apart from a couple of years writing BASIC programs in my first job, all my work after that was with compilers. So I&#8217;m a bit rusty with interpreters. The idea is that the interpreter reads a line of [&#8230;]</p>
The post <a href="https://learncgames.com/cling-an-interactive-c-interpreter/">Cling – an interactive C++ interpreter</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<div class='__iawmlf-post-loop-links' style='display:none;' data-iawmlf-post-links='[{&quot;id&quot;:93,&quot;href&quot;:&quot;https:\/\/pixabay.com\/users\/markusspiske-670330\/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1689066&quot;,&quot;archived_href&quot;:&quot;&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[],&quot;broken&quot;:false,&quot;last_checked&quot;:null,&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:94,&quot;href&quot;:&quot;https:\/\/pixabay.com\/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1689066&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260205102120\/https:\/\/pixabay.com\/?utm_source=link-attribution&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 11:50:20&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-15 12:03:43&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-27 11:09:00&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-14 22:59:27&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-03 19:13:13&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-08 10:51:40&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-12 18:42:27&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-18 05:17:31&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-21 17:51:40&quot;,&quot;http_code&quot;:403}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-21 17:51:40&quot;,&quot;http_code&quot;:403},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:95,&quot;href&quot;:&quot;https:\/\/root.cern\/cling&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260119154045\/https:\/\/root.cern\/cling\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 11:50:23&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-15 12:03:44&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-27 11:09:05&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-14 22:59:29&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-03 19:13:20&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-08 10:51:38&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-12 18:42:36&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-17 09:33:41&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-21 03:50:04&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-21 03:50:04&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:96,&quot;href&quot;:&quot;https:\/\/codepad.org&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20240520225456\/http:\/\/codepad.org\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 11:50:29&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-02-15 12:03:52&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-02-18 18:50:18&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-02-22 17:03:56&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-02-27 11:09:03&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-03-04 14:43:36&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-03-08 03:50:33&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-03-11 04:08:00&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-02 07:52:54&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-05 11:06:00&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-11 16:32:33&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-14 22:22:00&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-18 09:19:35&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-21 17:51:38&quot;,&quot;http_code&quot;:503}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-21 17:51:38&quot;,&quot;http_code&quot;:503},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:97,&quot;href&quot;:&quot;https:\/\/ideone.com&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260206115138\/https:\/\/ideone.com\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 21:53:36&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-15 12:03:48&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-18 18:50:24&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-22 17:03:59&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-27 11:09:01&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-04 12:21:15&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-08 03:50:34&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-11 04:08:00&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-02 07:52:53&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-05 11:05:59&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-13 18:20:50&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-17 15:02:07&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-20 19:39:42&quot;,&quot;http_code&quot;:200}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-20 19:39:42&quot;,&quot;http_code&quot;:200},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:98,&quot;href&quot;:&quot;https:\/\/root.cern\/doc\/master\/group__Tutorials.html&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260206115207\/https:\/\/root.cern\/doc\/master\/group__Tutorials.html&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 21:53:32&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-15 12:03:45&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-24 13:37:24&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-01 17:05:30&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-14 22:59:29&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-03 19:13:20&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-06 23:17:09&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-12 18:42:43&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-17 09:33:44&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-21 03:50:05&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-21 03:50:05&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;}]'></div>
<figure id="attachment_2900" aria-describedby="caption-attachment-2900" style="width: 300px" class="wp-caption alignleft"><img loading="lazy" decoding="async" class="size-medium wp-image-2900" src="https://learncgames.com/wp-content/uploads/2021/03/code-1689066_640-300x200.jpg" alt="Computer screen" width="300" height="200" srcset="https://learncgames.com/wp-content/uploads/2021/03/code-1689066_640-300x200.jpg 300w, https://learncgames.com/wp-content/uploads/2021/03/code-1689066_640.jpg 640w" sizes="auto, (max-width: 300px) 100vw, 300px" /><figcaption id="caption-attachment-2900" class="wp-caption-text">Image by <a href="https://pixabay.com/users/markusspiske-670330/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1689066">Markus Spiske</a> from <a href="https://pixabay.com/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1689066">Pixabay</a></figcaption></figure>
<p>When I first learned to program back in 1976, I had a teletype and a BASIC interpreter. Apart from a couple of years writing BASIC programs in my first job, all my work after that was with compilers.</p>
<p>So I&#8217;m a bit rusty with interpreters. The idea is that the interpreter reads a line of code and then executes it; parsing it and calling various routines to execute statements and parse then evaluate expressions. It&#8217;s kind if unusual to do this with C++. <a title="Link to cling at Cern" href="https://root.cern/cling/" target="_blank" rel="nofollow noopener">Cling</a> is built on the top of LLVM and Clang libraries.</p>
<p>This is different to sites like repl.it, <a title="Link to codepad.org" href="https://codepad.org/" target="_blank" rel="nofollow noopener">codepad.org</a> or <a title="Link to Ideone.com" href="https://ideone.com/" target="_blank" rel="nofollow noopener">ideone.com;</a> they compile the whole program and run it. With an interpreter, it runs line by line and you can print out variables at any time.  Interpreters are probably more like debuggers.</p>
<p>As well as C++, cling can execute C, Objective-C and that even less used language Objective-C++.  Developed at Cern it has a very extensive <a title="Link to cling tutorials" href="https://root.cern/doc/master/group__Tutorials.html" target="_blank" rel="nofollow noopener">set of tutorials</a>.</p>The post <a href="https://learncgames.com/cling-an-interactive-c-interpreter/">Cling – an interactive C++ interpreter</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2897</post-id>	</item>
		<item>
		<title>Nearly finished translating asteroids to C++</title>
		<link>https://learncgames.com/nearly-finished-translating-asteroids-to-c/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=nearly-finished-translating-asteroids-to-c</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Mon, 15 Mar 2021 00:00:33 +0000</pubDate>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Game]]></category>
		<category><![CDATA[Other stuff]]></category>
		<category><![CDATA[asteroids]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=2883</guid>

					<description><![CDATA[<p>I always wanted to do this and have most of it done. It just needs a bit of polishing plus making it cross-platform. It wasn&#8217;t the hardest  thing I&#8217;ve done although I did start by trying to make the common part for asteroids, player ship, bullets and aliens, the bit that managed position and velocity [&#8230;]</p>
The post <a href="https://learncgames.com/nearly-finished-translating-asteroids-to-c/">Nearly finished translating asteroids to C++</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="alignleft size-medium wp-image-2886" src="https://learncgames.com/wp-content/uploads/2021/03/asteroids-300x292.png" alt="Asteroids screenshot" width="300" height="292" srcset="https://learncgames.com/wp-content/uploads/2021/03/asteroids-300x292.png 300w, https://learncgames.com/wp-content/uploads/2021/03/asteroids.png 364w" sizes="auto, (max-width: 300px) 100vw, 300px" />I always wanted to do this and have most of it done. It just needs a bit of polishing plus making it cross-platform. It wasn&#8217;t the hardest  thing I&#8217;ve done although I did start by trying to make the common part for asteroids, player ship, bullets and aliens, the bit that managed position and velocity into a base class.</p>
<p>I then spent a day wrestling with the compiler trying to access this in those methods that used this and in the end found it easier to make it into its own class and had an instance of it in each of the classes. I.e. using composition rather than inheritance.</p>
<p>Rewriting in C++ made things like saving high scores to disk and reloading a bit simpler using C++ strings.  Now I just have to get my main PC up and running and then polish the code and publish it on GitHub.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>The post <a href="https://learncgames.com/nearly-finished-translating-asteroids-to-c/">Nearly finished translating asteroids to C++</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2883</post-id>	</item>
		<item>
		<title>An interesting project- Converting BASIC Computer Games</title>
		<link>https://learncgames.com/an-interesting-project-converting-basic-computer-games/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=an-interesting-project-converting-basic-computer-games</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Mon, 22 Feb 2021 00:00:57 +0000</pubDate>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Other stuff]]></category>
		<category><![CDATA[BASIC]]></category>
		<category><![CDATA[book]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=2719</guid>

					<description><![CDATA[<p>Yes it&#8217;s that book again, one I have mentioned a few times.  Now there&#8217;s a project to convert all of the games from the book into C#, Java, JavaScript, Python, Ruby and VB.NET. As with all Git sites, you can download all code from the site in a zip file or individual files. So far [&#8230;]</p>
The post <a href="https://learncgames.com/an-interesting-project-converting-basic-computer-games/">An interesting project- Converting BASIC Computer Games</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<div class='__iawmlf-post-loop-links' style='display:none;' data-iawmlf-post-links='[{&quot;id&quot;:152,&quot;href&quot;:&quot;https:\/\/github.com\/coding-horror\/basic-computer-games&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20251207040248\/https:\/\/github.com\/coding-horror\/basic-computer-games&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 12:20:41&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-10 20:35:55&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-15 00:35:53&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-19 08:38:56&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-22 18:20:22&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-27 04:24:14&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-03 00:39:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-06 10:44:08&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-09 12:22:32&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-13 00:31:32&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-17 00:37:53&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-20 16:39:33&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-23 17:52:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-28 00:36:24&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-01 04:35:16&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-04 12:42:51&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-07 14:49:55&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-11 16:32:37&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-15 00:34:35&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-18 12:09:42&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-21 20:02:14&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-21 20:02:14&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;}]'></div>
<p><img loading="lazy" decoding="async" class="alignleft size-medium wp-image-884" src="https://learncgames.com/wp-content/uploads/2020/06/basiccomputergames-244x300.jpg" alt="Basic Computer games book" width="244" height="300" srcset="https://learncgames.com/wp-content/uploads/2020/06/basiccomputergames-244x300.jpg 244w, https://learncgames.com/wp-content/uploads/2020/06/basiccomputergames.jpg 355w" sizes="auto, (max-width: 244px) 100vw, 244px" />Yes it&#8217;s that book again, one <a title="Link to blog entry about BASIC Computer games" href="https://learncgames.com/added-the-sources-of-another-game/" target="_blank" rel="nofollow noopener">I have mentioned a few times.</a>  Now there&#8217;s <a title="Link to GitHub project to convert BASIC Computer games" href="https://github.com/coding-horror/basic-computer-games" target="_blank" rel="nofollow noopener">a project</a> to convert all of the games from the book into C#, Java, JavaScript, Python, Ruby and VB.NET. As with all Git sites, you can download all code from the site in a zip file or individual files. So far though its very early in the project and there&#8217;s only a .BAS file in each of the subfolders for each of the games in the book. If you fancy getting involved, pick a game, a language and start coding. Sadly there&#8217;s no desire for C or C++ but that still leaves C# .</p>
<p>I still have this book and its sequel (<em>More BASIC Computer games!</em>) but to be honest I wouldn&#8217;t have bothered with most of the games in either book. They are all very much of the era (1978) which was just on the cusp of the home computer revolution and so were mostly obsolete within seven or eight years, due mainly to the terminal I/O. They&#8217;re ok for learning programming and of course you could run them in a Linux terminal.</p>The post <a href="https://learncgames.com/an-interesting-project-converting-basic-computer-games/">An interesting project- Converting BASIC Computer Games</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2719</post-id>	</item>
	</channel>
</rss>
