TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

C has its limits. If you know where to look

16 pointsby jandeboevrie5 months ago

3 comments

eqvinox5 months ago
This should be updated for ISO C23&#x27;s _BitInt(N), which is <i>not</i> equivalent to intN_t (the type promotion rules differ!)<p>(It also supports &quot;uncommon&quot; values of N)
pajko5 months ago
Never use fixed-size integers unless you are communicating with hardware, implementing some protocol or manipulating binary files.<p>If some code shared between 8&#x2F;16-bit and 32&#x2F;64-bit architectures requires an a least 16-bit type, go for &quot;int&quot;. If it requires an at least 32-bit type, go for &quot;long&quot;.<p>Also fixed-size integers shall not be printed with standard directives like %d or %u, but the PRId32, PRIu32, PRIx32, etc... macros shall be used from inttypes.h.
评论 #42409639 未加载
gregw25 months ago
FYI, there was a semi-related discussion on architectures and bit widths on HN a couple months ago: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=41773559">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=41773559</a>