用户工具

站点工具


learing:examples:string_characters

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

后一修订版
前一修订版
zh:learing:examples:string_characters [2016/03/21 05:12] – [硬件要求] 董凯萍learing:examples:string_characters [2023/06/07 04:23] (当前版本) – 外部编辑 127.0.0.1
行 1: 行 1:
 +====== String Character Functions ======
  
 +
 +
 +charAt()和setCharAt()是用来得到或者设置一个字符串里的给定的位置的字符的值。
 +
 +这些功能帮你寻找替换指定的字符。例如,下面就是在一个给定的字符串中替换冒号为等号。
 +
 +<code cpp>
 +
 +
 + String reportString = "SensorReading: 456";
 + int colonPosition = reportString.indexOf(':');
 + reportString.setCharAt(colonPosition, '='); </code>
 +
 +
 +下面的例子检查第二个单词的第一个字母是不是 B 。
 +
 + <code cpp>String reportString = "Franklin, Benjamin";
 + int spacePosition = reportString.indexOf(' ');
 + if (reportString.charAt(spacePosition + 1) == 'B') {
 +    Serial.println("You might have found the Benjamins.")
 + }</code>
 +
 +注意,如果你尝试使用charat()或者setCharat()的时候超出了字符串的长度,那么就会得到无法预知结果。如果你不确定,使用length() 功能检查以确保你没有超出字符串长度。
 +
 +
 +===== 硬件要求 =====
 +
 +|OCROBOT控制器|
 +|USB线|
 +
 +这个例子没有电路图,只需要通过USB线把你的OCROBOT控制器连上电脑,并且打开串口监视器。
 +===== ALPHA MEGA328-U核心 =====
 +
 +==== 硬件 ====
 +  * [[ocrobot:alpha:mega328-u:main|ALPHA MEGA328-U]]
 +
 +==== 搭建电路 ====
 +
 +  - USB线连接计算机与ALPHA MEGA328-U。
 +
 +==== 代码 ====
 +
 +<code cpp>/*
 +  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);
 +}</code>