1
0
mirror of https://github.com/arduino/Arduino.git synced 2024-11-28 09:24:14 +01:00

Expand String examples with explicit size concat and constructor

This expands examples to show the newly added APIs:

	String::concat(const char *, unsigned int)
	String::String(const char *, unsigned int)

Since not all cores versions will support this right away, a version
check is added against ARDUINO_CORE_API.
This commit is contained in:
Matthijs Kooijman 2019-09-19 19:52:07 +02:00
parent 6116a8e920
commit 1c454913d2
2 changed files with 32 additions and 0 deletions

View File

@ -67,6 +67,23 @@ void loop() {
stringTwo.concat(millis());
Serial.println(stringTwo); // prints "The millis(): 43534" or whatever the value of the millis() is
#if ARDUINO_API_VERSION >= 10000
// using concat with an explicit length argument to add only a part of
// a string:
stringOne = "Only part: ";
char *to_add = "use this but not this";
stringOne.concat(to_add, 8);
Serial.println(stringOne); // prints "Only part: use this"
// using concat with an explicit length argument to add a
// non-zero-terminated string / char array (note that it will be
// terminated inside the String object).
stringTwo = "Unterminated: ";
char unterminated[] = {'n', 'o', 'n', 'u', 'l'};
stringTwo.concat(unterminated, sizeof(unterminated));
Serial.println(stringTwo); // prints "Unterminated: nonul"
#endif // ARDUINO_API_VERSION
// do nothing while true:
while (true);
}

View File

@ -74,6 +74,21 @@ void loop() {
stringOne = String(5.698, 2);
Serial.println(stringOne);
#if ARDUINO_API_VERSION >= 10000
// Using an explicit length argument to to use only a part of a
// string:
char *to_add = "use this but not this";
stringOne = String(to_add, 8);
Serial.println(stringOne); // prints "use this"
// using explicit length argument to add a non-zero-terminated string
// / char array (note that it will be terminated inside the String
// object).
char unterminated[] = {'n', 'o', 'n', 'u', 'l'};
stringTwo = String(unterminated, sizeof(unterminated));
Serial.println(stringTwo); // prints "nonul"
#endif // ARDUINO_API_VERSION
// do nothing while true:
while (true);