ค้นหาความยาวของสตริง

Arduino:
ค้นหาความยาวของสตริง

วิธีทำ:

void setup() {
  Serial.begin(9600); // เริ่มการสื่อสารแบบซีเรียล
  String myString = "Hello, Arduino!"; // สตริงของคุณที่นี่
  int stringLength = myString.length(); // ค้นหาความยาวของสตริง
  Serial.print("ความยาวของสตริงคือ: ");
  Serial.println(stringLength); // แสดงผลความยาว
}

void loop() {
  // ไม่มีอะไรต้องทำที่นี่
}

ตัวอย่างผลลัพธ์:

ความยาวของสตริงคือ: 15

การทลายปัญหา

ในอดีต, โปรแกรมเมอร์ภาษา C ใช้ฟังก์ชัน strlen() จาก <string.h>, นับตัวอักษรจนกระทั่งพบตัว null-terminator ในโลกของ Arduino, คลาส String ทำให้ชีวิตง่ายขึ้นด้วยวิธีการ length() ที่มีอยู่แล้ว อย่างไรก็ตาม, การใช้งาน String อาจทำให้หน่วยความจำจำกัดของอุปกรณ์กระจายตัวเป็นเวลานาน ทางเลือกคืออะไร? ใช้อาร์เรย์ของ char (สตริงแบบสไตล์ C), ซึ่งเป็นมิตรกับหน่วยความจำมากกว่าแต่ค่อนข้างยากต่อการจัดการ

สำหรับโปรเจ็กต์ขนาดใหญ่, ควรคำนึงถึงการจัดการหน่วยความจำเสมอ ด้วยวิธีการ length(), ไม่ต้องการการคำนวณพิเศษ - วัตถุ String จะติดตามขนาดของมันเอง จากภายใน, length() เป็นการค้นหาอย่างรวดเร็ว, ไม่ใช่การนับตัวอักษร นั่นคือความมีประสิทธิภาพ! แต่ถ้าคุณมีหน่วยความจำน้อย, กลับไปที่พื้นฐานด้วยอาร์เรย์ของ char และการคำนวณความยาวด้วยตัวเอง, เหมือนกับวันวานของ strlen() นั่นเอง

ดูเพิ่มเติม