15#ifndef STM32_WSTRING_H_
16#define STM32_WSTRING_H_
26 String(
const char *s =
"") : buf_(nullptr), len_(0) { assign(s); }
29 String(
const String &o) : buf_(nullptr), len_(0) { assign(o.buf_); }
49 const char *
c_str()
const {
return buf_ ? buf_ :
""; }
51 unsigned int length()
const {
return len_; }
54 char operator[](
unsigned int i)
const {
return (i < len_) ? buf_[i] : 0; }
57 void assign(
const char *s) {
63 len_ = (
unsigned int)strlen(s);
64 buf_ = (
char *)malloc(len_ + 1);
66 memcpy(buf_, s, len_ + 1);
Minimal Arduino-String stand-in (see file description).
String & operator=(const String &o)
String & operator=(const char *s)
char operator[](unsigned int i) const
const char * c_str() const
unsigned int length() const
~String()
Destructor frees the copy.