고흐의 연구실/C언어와 C++

[C언어] 문자열 검색 sprintf(), strchr(), strrshr(), strstr()

전고흐 2020. 8. 7. 04:01
728x90

 

sprintf()

ㅇ sprintf는 printf와는 다르게 서식지정해서 문자열을 만들 수 있음.

  • 헤더 : stdio.h
  • sprintf(배열, 서식, 값);

  • sprintf(배열, 서식, 값1, 값2, ...);

    • int sprintf(char * const _Buffer, char const * const _Format, ...);

    • 성공하면 만든 문자열의 길이를 반환, 실패하면 음수를 반환

   ex) sprintf(s1, "Hello, %s", "world!"); // "Hello, %s"로 서식을 지정하여 s1에 저장

   ex) sprintf(s1, "%c %d %f %e", 'a', 10, 3.2f, 1.123456e-21f); // 문자, 정수, 실수를 문자열로 만듦

 

strchr()

ㅇ strchr은 문자열에서 특정 문자를 검색할 수 있음.

  • 헤더 : string.h
  • strchr(대상문자열, 검색할문자);
    • char *strchr(char * const _String, int const _Ch);
    • 문자를 찾았으면 문자로 시작하는 문자열의 포인터를 반환, 문자가 없으면 NULL을 반환

strrchr()

  • strrchr(대상문자열, 검색할문자);
    • char *strrchr(char * const _String, int const _Ch);
    • 문자열의 끝에서부터 역순으로 검색해서 문자를 찾았으면 해당 문자로 시작하는 문자열의 포인터를 반환, 문자가 없으면 NULL을 반환

strstr()

  • strstr(대상문자열, 검색할문자열);
    • char *strstr(char * const _String, char const * const _SubString);
    • 문자열을 찾았으면 문자열로 시작하는 문자열의 포인터를 반환, 문자열이 없으면 NULL을 반환
728x90