Fast immer ohne Vorzeichen: Warum unsigned Integer die bessere Wahl sind
Almost Always Unsigned
Dale Weiler argumentiert, dass die Verwendung von vorzeichenbehafteten Ganzzahlen (signed integers) in den meisten Programmen unnötig ist, da die meisten Werte nie negativ sind. Er widerlegt gängige Argumente gegen vorzeichenlose Typen (unsigned) und zeigt anhand von Beispielen in C, C++, Go, Rust und Odin, wie typische Probleme wie Rückwärtsschleifen, Differenzberechnung, sichere Mittelwertbildung und Überlaufprüfung elegant mit unsigned gelöst werden können. Der Artikel betont, dass unsigned-Überlauf wohldefiniert ist und dass viele vermeintliche Sicherheitsprobleme auf falschem Code beruhen, nicht auf der Wahl des Typs.
Die meisten Argumente gegen die Verwendung von unsigned Ganzzahlen sind schlicht falsch und ermutigen dazu, unsicheren Code zu schreiben.