Re:C Strings and my slow descent to madness
by Decabytes on Thursday April 06, 2023 @10:32AM
(#35468788)
I've added a footnote to my incorrect explanation and credited you. I'm still a C noob so thank you for pointing this out!
Re:C Strings and my slow descent to madness
by andoma on Thursday April 06, 2023 @11:06AM
(#35469312)
Reminds me of the incorrect cast of memcmp() return value that resulted in this bug: https://bugs.mysql.com/bug.php?id=64884
Re:C Strings and my slow descent to madness
by cassepipe on Thursday April 06, 2023 @03:41PM
(#35473354)
I don't have MacOs to prove it but I believe `strcmp` on MacOs returns either 0, 1 or -1
Re:C Strings and my slow descent to madness
by cpeterso on Thursday April 06, 2023 @05:42PM
(#35474920)
strcmp's return value is loosely defined because some implementations return the difference between the characters in the string to avoid some conditional checks or jumps. Something like:
int d = a[i] - b[i];
if (d == 0) return d;
No it doesn’t.