C 문자열 함수

(2024-01-13)

C 문자 입출력 함수, C 서식 문자열, string.h, scanf, printf, puts, C 변환 지정자, C 서식 지정자


1. C 언어문자열

  ※ ☞ C 언어 문자열 참조
     - 입출력 (stdio.h) : gets(), fgets(), puts(), fputs(), scanf(), printf() 등
     - 처리 (string.h) : strlen(), strcmp(), strcpy() 등


2. C 언어문자열 함수의 주요 종류문자열 입력/출력 : 문자, 단순 문자열, 서식 문자열 등

  ㅇ 문자열 처리 : 복사, 비교, 결합(연결), 검색, 변환 등


3. C 언어문자열 입출력 함수

  ㅇ 문자 단위의 입출력 (stdio.h)
     - getchar() : 한 문자 입력 후 변수에 대입
     - putchar(인자) : 인자로 전달된 한 문자를 출력

  ㅇ 단순 문자열 입출력 (stdio.h)
     - 문자열 입력 : gets(), fgets()
        . gets(문자열) : 한 줄을 전부 읽고, 개행문자(\n)를 제거한 후 널문자(\0)를 추가함
           .. (문제점 : 입력 문자열을 기억공간에 저장할 때, 입력 크기를 점검하지 않음)
        . fgets(문자열,크기,stdin) : 입력 최대 크기 지정, 개행문자도 읽고 저장

     - 문자열 출력 : puts(), fputs()
        . puts() : 문자열 출력 끝에 자동으로 개행문자(\n) 추가
           .. 성공: 0값 또는 0이 아닌값 반환, 실패: EOF 반환
        . fputs() : 문자열 출력 끝에 개행문자(\n) 추가 안함

  ㅇ 서식 문자열에 의한 입출력 (stdio.h)                                  ☞ C 서식 문자열 참조
     - 입출력 : printf(), scanf(), sprintf()
        . scanf(서식,변수 or 값) : 서식 문자열에 의한 입력
        . printf(서식,변수 or 값) : 서식 문자열에 의한 화면 출력
        . sprintf(배열 or 포인터,서식,변수 or 값) : 서식 문자열에 의해 배열로 저장
        . fprintf(파일포인터,서식,변수 or 값) : 서식 문자열에 의해 파일로 저장

        . 한편, 성공 : 읽은/쓴 문자 개수를 반환, 실패 : 음수 (-1)


4. C 언어문자열 처리 함수 (string.h)

  ※ 주요 문자열 처리 형태
     - (연결, 검색/위치파악, 복사, 추출, 비교, 카운트, 치환, 공백제거, 빈 문자열 검사 등)

  ㅇ 문자열 길이 (카운트)
     - strlen(문자열 배열 or 문자열 포인터)
  ㅇ 문자열 연결
     - strcat() : 문자열 연결
     - strncat() : 문자열 n개 연결
  ㅇ 문자열 비교
     - strcmp(문자열 1, 문자열 2) : 문자열 비교
     - strncmp() : 문자열 n개 비교
  ㅇ 문자열 복사
     - strcpy(s,"...") : 문자열 변수 s에 "..."를 복사
        . 반환은 타깃 문자열 변수 s에 대한 포인터 
     - strncpy() : 문자열 n개 복사
  ㅇ 문자열 검색
     - 단일 문자 검색 : strchr(s,c),  strrchr(s,c) 
        . 성공 : 문자열 포인터 반환, 실패 : NULL 반환 
     - 다중 문자 검색 : strpbrk()
     - 문자 포함 여부
        . 문자 포함 : strcspn()
        . 문자 미 포함 : strspn()
     - 문자열 검색 : strstr()
  ㅇ 문자열 변환
     - 대문자 변환 : strupr()
     - 소문자 변환 : strlwr()
  ㅇ 문자열 구분자로 분리
     - strtok()
  ㅇ 문자열 채움
     - strset()
  ㅇ 문자열 뒤집기 
     - strrev()


5. C 언어의 변환 지정자, 서식 문자열, 서식 지정자

  ㅇ 변환 지정자 (Conversion Specifier), 서식 문자열 (Format String),
     서식 지정자 (Format Specifier)

  ㅇ 종류
     - 단일 문자 : %c

     - 10진수 (정수) 
           .. %d 또는 %i  (부호있음, Signed Integer)
           .. %u      (부호없음, Unsigned Integer)
     - 16진수 (정수) : %x or %X (부호없음)
     - 8진수 (정수) : %o

     - 부동소수점 수 (실수) 
        . %f (10진수, 기본 : 소수점 6자리까지)
        . %lf (10진수 소수점 6자리)
        . %e 또는 %E (지수)  :  例) 0.1234e-5f (0.1234 x 10-5)
        . %a

     - 문자열 : %s
     - 주소 (16진수) : %p
        . %x or %X 를 써도 동일 결과 나옴

  ㅇ 例) 
     - scanf("%d",&sum); => 1개 숫자 만 입력
     - scanf("%3d",&var); => 1234 입력시, 123 만 입력되어 변수 var에 저장됨

C 함수
   1. C 함수   2. C 함수 종류   3. C 문자열 함수   4. C 동적 메모리 관리 함수   5. C 파일 처리 함수   6. C 파일 포인터  


Copyrightⓒ written by 차재복 (Cha Jae Bok)       기술용어해설 소액 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"