Arduino에서 문자열 비교

Ammar Ali 2023년10월12일 Arduino Arduino String
  1. Arduino의 compareTo() 함수를 사용하여 문자열 비교
  2. Arduino의 equals() 함수를 사용하여 문자열 비교
  3. Arduino에서 비교 연산자를 사용하여 문자열 비교
Arduino에서 문자열 비교

이 튜토리얼에서는 Arduino의 compareTo() 함수를 사용하여 두 문자열을 비교하는 방법에 대해 설명합니다.

Arduino의 compareTo() 함수를 사용하여 문자열 비교

Arduino에서 두 문자열을 비교하기 위해 문자열 객체의 compareTo() 함수를 사용할 수 있습니다. compareTo() 함수는 두 문자열에 있는 문자를 차례로 비교하여 두 문자열이 동일한지 여부를 식별합니다.

compareTo() 함수는 두 문자열의 첫 번째 문자에서 시작하여 ASCII 값을 사용하여 비교하고 문자열이 일치하면 다음 문자로 이동합니다. 각 키보드 문자에는 고유한 ASCII 값이 있습니다.

대문자와 소문자의 ASCII 값이 다릅니다. a의 ASCII 값은 97이고 A는 65입니다. 대문자와 소문자를 무시하고 두 문자열을 비교하려면 두 문자열이 모두 대문자 또는 소문자인지 확인해야 합니다.

문자열을 대문자로 변환하려면 Arduino에서 문자열 객체의 toUpperCase() 함수를 사용할 수 있습니다. 문자열을 소문자로 변환하려면 Arduino에서 문자열 객체의 toLowerCase() 함수를 사용할 수 있습니다.

compareTo() 함수는 두 문자열이 같으면 0을 반환합니다. compareTo() 함수는 첫 번째 문자열의 ASCII 값이 두 번째 문자열의 ASCII 값보다 작으면 음수를 반환합니다.

compareTo() 함수는 첫 번째 문자열의 ASCII 값이 두 번째 문자열의 ASCII 값보다 크면 양수를 반환합니다. 예를 들어, 두 개의 문자열 변수를 정의하고 Arduino의 compareTo() 함수를 사용하여 비교합시다.

String string_1 = "Hello";
String string_2 = "World";
int result = 0;

void setup() { result = string_1.compareTo(string_2); }
void loop() {}

비교 결과는 result 변수 안에 저장됩니다. compareTo() 함수 대신 equals() 함수를 사용할 수도 있습니다.

Arduino의 equals() 함수를 사용하여 문자열 비교

equals() 함수는 두 문자열이 같으면 true이고 그렇지 않으면 false인 부울 값을 반환합니다. equals() 함수도 대소문자를 구분하므로 abcABC와 같지 않습니다.

equals() 함수에 대한 자세한 내용은 이 링크를 확인하십시오. 대소문자 구분을 무시하고 두 문자열을 비교하려면 문자열 객체의 equalsIgnoreCase() 함수를 사용할 수 있습니다.

equalsIgnoreCase()도 부울을 반환하고 대소문자를 구분하지 않습니다. 즉, abcABC는 동일하고 함수는 true를 반환합니다. equalsIgnoreCase() 함수에 대한 자세한 내용은 이 링크를 확인하십시오.

Arduino에서 비교 연산자를 사용하여 문자열 비교

<=보다 작거나 같음, >=보다 크거나 같음, ==와 같은 비교 연산자 및 기타 연산자를 사용하여 문자열을 비교할 수도 있습니다.

이 경우 문자열은 그 안에 있는 문자의 ASCII 값에 따라 비교됩니다. 즉, 이 비교도 대소문자를 구분합니다.

예를 들어 아래 문은 false를 반환합니다.

"hello" == "Hello"
튜토리얼이 마음에 드시나요? DelftStack을 구독하세요 YouTube에서 저희가 더 많은 고품질 비디오 가이드를 제작할 수 있도록 지원해주세요. 구독하다
작가: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

관련 문장 - Arduino String