这里会显示出您选择的修订版和当前版本之间的差别。
后一修订版 | 前一修订版 | ||
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> | ||
+ | |||
+ | |||
+ | | ||
+ | int colonPosition = reportString.indexOf(':' | ||
+ | | ||
+ | |||
+ | |||
+ | 下面的例子检查第二个单词的第一个字母是不是 B 。 | ||
+ | |||
+ | < | ||
+ | int spacePosition = reportString.indexOf(' | ||
+ | if (reportString.charAt(spacePosition + 1) == ' | ||
+ | Serial.println(" | ||
+ | | ||
+ | |||
+ | 注意,如果你尝试使用charat()或者setCharat()的时候超出了字符串的长度,那么就会得到无法预知结果。如果你不确定,使用length() 功能检查以确保你没有超出字符串长度。 | ||
+ | |||
+ | |||
+ | ===== 硬件要求 ===== | ||
+ | |||
+ | |OCROBOT控制器| | ||
+ | |USB线| | ||
+ | |||
+ | 这个例子没有电路图,只需要通过USB线把你的OCROBOT控制器连上电脑,并且打开串口监视器。 | ||
+ | ===== ALPHA MEGA328-U核心 ===== | ||
+ | |||
+ | ==== 硬件 ==== | ||
+ | * [[ocrobot: | ||
+ | |||
+ | ==== 搭建电路 ==== | ||
+ | |||
+ | - USB线连接计算机与ALPHA MEGA328-U。 | ||
+ | |||
+ | ==== 代码 ==== | ||
+ | |||
+ | <code cpp>/* | ||
+ | String charAt() and setCharAt() | ||
+ | */ | ||
+ | |||
+ | void setup() { | ||
+ | // 串口 | ||
+ | Serial.begin(9600); | ||
+ | |||
+ | Serial.println(" | ||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | // 产生一个字符来显示传感器值 | ||
+ | String reportString = " | ||
+ | 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); | ||
+ | }</ |