목표

함수 정리 및 개인적인 시간이 있을 때 설명 읽어두기.

각 함수 설명

strlen

  • **문자열의 길이(바이트 단위)**를 반환하는 함수입니다.
  • 즉, 주어진 문자열에서 널 종료 문자(\0) 이전까지의 문자 개수를 바이트 단위로 계산합니다.

사용방법

long strlen(char s[]);
  • s → 길이를 구할 문자열 (널 종료 문자 \0 포함)
  • 반환값 → 문자열의 길이(바이트 단위, long 타입)

예제

long length;
char buffer[100] = "CANalyzer";
length = strlen(buffer);
write("String length: %d", length);
  • 문자열 s의 길이를 측정하는데, 널 종료 문자(\0)는 포함하지 않음.
  • 예를 들어, "CANalyzer"라는 문자열의 길이는 9가 아니라 8 (C A N a l y z e r \0) 입니다.
    • 문자열을 저장할 때, 문자열 끝에 자동으로 \0이 추가됨.

strlen(…)과 다국어 문자열

  • strlen(…)은 한 문자가 여러 바이트로 표현되는 경우 주의가 필요합니다.
  • 특히 일본어, 한글, 특수 문자가 포함된 경우 예상과 다른 결과가 나올 수 있습니다.

일본어 문자열 예제 (Shift-JIS)

char buffer[100] = "こんにちは"; // "안녕하세요" (일본어)
long length = strlen(buffer);
write("String length: %d", length);

➡️ 예상 출력값: 10 (5개의 문자지만, Shift-JIS에서는 문자당 2바이트 필요)

➡️ 한 문자가 여러 바이트를 차지할 수 있으므로 주의가 필요.

'Programming > CANoe' 카테고리의 다른 글

CANoe UI 만들기: 버튼  (0) 2025.03.10
CANoe 함수: mbstrncpy  (0) 2025.03.10
CANoe 함수: sysSetVariableString  (0) 2025.03.10
CANoe 함수: sysGetVariableString  (0) 2025.03.02
CANoe 함수: elcount  (0) 2025.03.02
블로그 이미지

RIsN

,