Arduino内置教程 您所在的位置:网站首页 arduino创客机器人教程 Arduino内置教程

Arduino内置教程

2024-06-14 14:15| 来源: 网络整理| 查看: 265

字符加法运算符

你可以用多种方法把字符串加在一起。这也叫字符串连接,而且它会由于你连接的字符串或者字符数组的长度,而导致原字符串变得更长。+运算符允许你来把字符串和另一个字符串,常量字符数组,ASCII,变量,或者常量字符等组合起来。 // adding a constant integer to a string: stringThree = stringOne + 123; // adding a constant long interger to a string: stringThree = stringOne + 123456789; // adding a constant character to a string: stringThree = stringOne + 'A'; // adding a constant string to a string: stringThree = stringOne + "abc"; // adding two Strings together: stringThree = stringOne + stringTwo; 如果函数返回一个和上面说的数据类型相符的值,你可以用+运算符来把函数的结果加到字符串里。例如: stringThree = stringOne + millis(); 这是符合的值,因为millis()函数返回一个长整数,这是可以被加到字符串里的。你也可以这样做: stringThree = stringOne + analogRead(A0); 因为analogRead()返回一个整数。当你要显示一个组合字符串(含数值和描述,用来显示串口通讯,LCD显示,以太网通讯,或者其他地方)时,字符串连接会很有用。 注意:你应该对连到一起的多个数据类型小心,因为你可能会得到一个出乎意料的结果。如: int sensorValue = analogRead(A0); String stringOne = "Sensor value: "; String stringThree = stringOne + sensorValue; Serial.println(stringThree); 结果是"Sensor Value: 402",或者不管analogRead()的结果怎样,只是: int sensorValue = analogRead(A0); String stringThree = "Sensor value: " + sensorValue; Serial.println(stringThree); 得到不可预测的结果是因为stringThree在你开始连接不同数据类型前从来没有得到一个初始值。 这里是另外一个例子,不合适的初始值会引起错误: Serial.println("I want " + analogRead(A0) + " donuts"); 这个不能编译,因为编译器不能正确操作运算符的优先度。另一方面,下面的例子可以编译,但不能运行出预期的结果: int sensorValue = analogRead(A0); String stringThree = "I want " + sensorValue; Serial.println(stringThree + " donuts");

它因为和前面同样的原因而不能正确运行:在你开始连接不同数据类型前,stringThree 从没有得到一个初始化的值。

而最好的结果是,在你连接他们前,初始化你的字符串。

硬件要求

Arduino or Genuino 开发板

电路

这个例子不需要连接额外的电路,除了你的开发板需要连接到你的电脑,并且打开Arduino IDE的串口监视器窗口。

请输入图片描述

图由 Fritzing 软件绘制

样例代码

这里是几个不同连接工作的例子:

/* Adding Strings together Examples of how to add strings together You can also add several different data types to string, as shown here: created 27 July 2010 modified 2 Apr 2012 by Tom Igoe http://www.arduino.cc/en/Tutorial/StringAdditionOperator This example code is in the public domain. */ // declare three strings: String stringOne, stringTwo, stringThree; void setup() { // initialize serial and wait for port to open: Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for native USB port only } stringOne = String("You added "); stringTwo = String("this string"); stringThree = String(); // send an intro: Serial.println("\n\nAdding strings together (concatenation):"); Serial.println(); } void loop() { // adding a constant integer to a string: stringThree = stringOne + 123; Serial.println(stringThree); // prints "You added 123" // adding a constant long interger to a string: stringThree = stringOne + 123456789; Serial.println(stringThree); // prints "You added 123456789" // adding a constant character to a string: stringThree = stringOne + 'A'; Serial.println(stringThree); // prints "You added A" // adding a constant string to a string: stringThree = stringOne + "abc"; Serial.println(stringThree); // prints "You added abc" stringThree = stringOne + stringTwo; Serial.println(stringThree); // prints "You added this string" // adding a variable integer to a string: int sensorValue = analogRead(A0); stringOne = "Sensor value: "; stringThree = stringOne + sensorValue; Serial.println(stringThree); // prints "Sensor Value: 401" or whatever value analogRead(A0) has // adding a variable long integer to a string: long currentTime = millis(); stringOne = "millis() value: "; stringThree = stringOne + millis(); Serial.println(stringThree); // prints "The millis: 345345" or whatever value currentTime has // do nothing while true: while (true); }

[Get Code]

更多

String object – 字符串对象的参考 CharacterAnalysis - 使用operators来识别对应的特征类型。 StringAdditionOperator - 用不同方法把字符串加到一起。 StringAppendOperator - 用+=运算符和concat()方法来添加东西到字符串里。 StringCaseChanges - 改变字符串的状态。 StringCharacters - 在字符串里获得或设置一个指定的字符的值 StringComparisonOperators - 按字母排列顺序地比较字符串 StringConstructors - 初始化字符串对象 StringIndexOf - 寻找在字符串里字符的第一个或最后一个的状态 StringLength - 获得和修剪字符串的长度 StringLengthTrim - 获得和修剪字符串的长度 StringReplace - 替换字符串里的个别字符 StringStartsWithEndsWith - 检查一个给定的字符或子串(substrings)的开始或结尾 StringSubstring - 在给定的字符串里寻找"phrases" StringToInt - 允许你把字符串转换成整数数字


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有