Is there a reason why sometimes functions (or should i better say “procedures”) return a value and sometimes not?
string.getBytes(buf, len) - I would have expected that a “getBytes” function call will return “those bytes”. But I would not expect that this function call would write into the parameter “buf”.
WiFi.macAddress() on the other hand returns the MAC address.
WiFi.BSSID(param) writes the MAC address back to the parameter.
Isn’t this very dangerous and confusing? Or, is there an important reason for doing so? Or, is it just legacy?