Arduino strcmp 함수

Ammar Ali 2023년10월12일
Arduino strcmp 함수

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

Arduino strcmp() 기능

strcmp() 함수는 Arduino의 두 문자열을 비교합니다. strcmp() 함수는 두 문자열에 있는 문자의 ASCII 값을 비교한 다음 문자의 ASCII 값에 따라 세 가지 유형의 출력 값을 반환합니다.

키보드의 문자는 a 문자의 ASCII 값이 65인 것처럼 고유한 ASCII 값을 갖습니다. 다음은 strcmp() 함수의 기본 구문입니다.

output = strcmp(string1, string2);

위의 구문은 두 문자열에 있는 모든 문자가 동일한 경우 0을 반환하고, 두 번째 문자열의 문자와 일치하지 않는 첫 번째 문자열의 문자가 더 낮은 ASCII 값을 갖는 경우 음수를 반환합니다. 두 번째 문자열에 있는 문자보다 크고 첫 번째 문자열의 일치하지 않는 문자가 두 번째 문자열의 문자보다 큰 ASCII 값을 가지고 있으면 양수를 반환합니다.

처음 두 문자의 ASCII 값 차이가 0이면 strcmp() 함수는 다음 문자로 이동하는 식으로 진행되며 모든 문자가 비교되면 0도 반환됩니다. 두 문자열이 동일함을 나타냅니다.

두 문자의 ASCII 값이 0이 아니면 함수가 중지되고 현재 일치하지 않는 문자의 ASCII 값 차이를 반환합니다.

예를 들어, 두 개의 동일한 문자열을 정의하고 Arduino의 strcmp() 함수를 사용하여 비교합시다.

아래 코드를 참조하십시오.

int output;
void setup() {
  char* string1 = "hello";
  char* string2 = "hello";
  output = strcmp(string1, string2);
  Serial.begin(9600);
  Serial.println(output);
}
void loop() {}

출력:

0

strcmp() 함수의 입력은 상수 문자열이어야 합니다. 위의 코드에서 우리는 strcmp() 함수의 출력을 보여주기 위해 Arduino의 직렬 모니터를 사용했습니다.

Serial.begin() 함수는 직렬 모니터를 초기화하는 데 사용되며 Serial.println() 함수는 직렬 모니터 창에 지정된 값을 인쇄합니다.

또한 if 문과 같은 조건문에서 strcmp() 함수의 출력을 사용하여 출력이 0인 경우와 같은 특정 작업을 수행할 수 있습니다. 직렬 모니터에 두 문자열이 동일한.

Arduino의 다른 기능을 사용하여 compareTo()equals() 기능과 같은 두 문자열을 비교할 수도 있습니다. Arduino의 문자열 비교에 대한 자세한 내용은 이 링크를 확인하십시오.

작가: 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