問題タブ [strtoull]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - strtoull("-1", NULL, 0) などの負の値の意外な振る舞い
strtoull("-1", NULL, 0)
18446744073709551615
私がテストしたシステム (Apple Libc を使用する OS/X、Glibc を使用する Linux)では、(0xFFFFFFFFFFFFFFFF
別名ULLONG_MAX
) と評価されます。
戻り値の型の範囲外の値をチェックすることになっているのに、すべての負の値をstrtoull
返さないのはなぜですか?0
編集:周りの動作-ULLONG_MAX
も一貫していないようです: