Comment Comment by messe You have an off-by-one error. The strings are 3 bytes long.I'd write something similar, more or less; Probably the following, not for optimization, but more as a matter of style: const char countries[][3] = { "A1", "A0", // [...] }; // [...] int total_countries = (int) (sizeof(countries) / sizeof(countries[0])); return cc < total_countries ? countries[cc] : "UNKNOWN"; No need to hard code the length, and the cast is guaranteed to be within the bounds of an int on all platforms as long as you don't go over 2^16-1 countries. parent messe 5 years ago
I'd write something similar, more or less; Probably the following, not for optimization, but more as a matter of style:
No need to hard code the length, and the cast is guaranteed to be within the bounds of an int on all platforms as long as you don't go over 2^16-1 countries.