用户工具

站点工具


learing:examples:string_characters

String Character Functions

charAt()和setCharAt()是用来得到或者设置一个字符串里的给定的位置的字符的值。

这些功能帮你寻找替换指定的字符。例如,下面就是在一个给定的字符串中替换冒号为等号。

 
 String reportString = "SensorReading: 456";
 int colonPosition = reportString.indexOf(':');
 reportString.setCharAt(colonPosition, '='); 

下面的例子检查第二个单词的第一个字母是不是 B 。

String reportString = "Franklin, Benjamin";
 int spacePosition = reportString.indexOf(' ');
 if (reportString.charAt(spacePosition + 1) == 'B') {
    Serial.println("You might have found the Benjamins.")
 }

注意,如果你尝试使用charat()或者setCharat()的时候超出了字符串的长度,那么就会得到无法预知结果。如果你不确定,使用length() 功能检查以确保你没有超出字符串长度。

硬件要求

OCROBOT控制器
USB线

这个例子没有电路图,只需要通过USB线把你的OCROBOT控制器连上电脑,并且打开串口监视器。

ALPHA MEGA328-U核心

硬件

搭建电路

  1. USB线连接计算机与ALPHA MEGA328-U。

代码

/*
  String charAt() and setCharAt()
*/
 
void setup() {
  // 串口
  Serial.begin(9600);
 
  Serial.println("\n\nString  charAt() and setCharAt():");
}
 
void loop() {
  // 产生一个字符来显示传感器值
  String reportString = "SensorReading: 456";
  Serial.println(reportString);
 
  // 有意义的数字在第十五位
  char mostSignificantDigit = reportString.charAt(15);
 
  String message = "Most significant digit of the sensor reading is: ";
  Serial.println(message + mostSignificantDigit);
 
  // 增加空格:
  Serial.println();
 
  // 也可以改变字符,替换字符
  reportString.setCharAt(13, '=');
  Serial.println(reportString);
 
  // 循环:
  while (true);
}
learing/examples/string_characters.txt · 最后更改: 2017/10/05 03:45 (外部编辑)