Why C's standard integer parsing functions are broken
By
konmok
Crisp on the outside, thoughtful on the inside. A keeper.
Summary
The article critiques the C standard library's integer parsing functions (atol(), strtol()/strtoul(), and sscanf()), arguing they are all fundamentally broken due to undefined behavior, inconsistent error handling, and ambiguous semantics. The author examines edge cases like overflow, invalid inputs, whitespace handling, and locale-dependent behavior, ultimately claiming there is no reliable, portable way to parse integers in C. A postscript update notes that C++'s std::from_chars() appears to be a useful alternative.
Key quotes
· 3 pulledThere are a few ways to attempt to parse a string into a number in the C standard library. They are ALL broken.
What is the correct behavior, anyway?
I'll start by claiming a common sense 'I know it when I see it'.
You might also wanna read
NVIDIA Announces "Hack for Impact" London Event for Autonomous AI Agent Development
NVIDIA is hosting a "Hack for Impact" event in London, challenging participants to build autonomous agentic applications using open-source m
Four practical steps to control Azure Foundry token costs for agentic AI workloads
This article provides practical guidance on controlling token costs in Microsoft Azure Foundry, particularly for agentic AI workloads where
MerLean-Prover: A Recursive Agent Harness for Lean 4 Theorem Proving Outperforms Baselines
MerLean-Prover is an end-to-end Lean4 theorem prover that replaces 'sorry' declarations with kernel-checkable proofs using three agent types
Why small pull request policies can backfire on software quality
The article critiques a common software engineering policy that limits pull requests (PRs) to small sizes (e.g., 500 lines, few files). Whil
apenwarr.ca·4h agoHow Anthropic contains Claude's expanding access across its products
Anthropic describes how it has evolved its approach to granting Claude, its AI assistant, increasingly broad access to internal systems over
Testing Cursor's Jira integration: How ticket quality affects AI agent performance
Cursor launched a Jira integration that lets developers assign tickets directly to an AI agent, eliminating context switching. The author te
bit.ly·5h ago