문자열 컨트롤 함수 (strlen, strcpy, strcat, strstr, strchr, strtok, atoi 등..)
Programming/C 2013. 2. 15. 03:11 |strlen (String Lenth) : 문자열의 길이를 리턴하는 함수.
#include <string.h>
size_t strlen(const char* s);
문자열의 길이 정보 반환
strcpy (String Copy), strncpy (String Number Copy) : 문자열 복사 함수.
#include <string.h>
char* strcpy(char* dest, const char* src);
char* strncpy(char* dest, const char* src, size_t n);
첫 번째 매개변수에 전달된 주소 값(dest에 전달된 값) 반환.
strcat (String Concatenate), strncat (String Number Concatenate) : NULL문자 뒤에 문자열을 추가하는 함수.
#include <string.h>
char* strcat(char* dest, const char* src);
char* strncat(char* dest, const char* src, size_t n);
첫 번째 매개변수에 전달된 주소 값(dest에 전달된 값) 반환.
: 만약 abcd\0 이 있는데 efg\0를 붙인다면, \0를 없애고 그자리부터 붙여짐. -> abcdefg\0
strcmp (String Compare), strncmp (String Number Compare) : 문자열의 비교 함수.
#include <string.h>
char* strcmp(char* dest, const char* src);
char* strncmp(char* dest, const char* src, size_t n);
두 문자열이 동일하면 0, 동일하지 않으면 0이 아닌 값 반환 (더 정확히 말하자면, 음수를 리턴하면 그것은 앞서는 문자열이고, 양수를 리턴하면 그것은 뒤서는 문자열이다.)
앞서거나 뒤선다는 것은 사전편찬순으로 말함.
: strncmp함수는 비교하는 문자열의 길이가 세 번째 전달 인자의 값보다 크면, 세 번째 전달인자의 길이만큼만 부분 비교를 한다.
strchr (String Character), strrchar : 문자가 언제 처음 또는 마지막에 등장하는지 알아내는 함수.
#include <string.h>
char* strchr(const char* s, int c);
char* strrchr(const char* s, int c);
문자를 찾을 시 해당 문자의 포인터를, 못 찾을 시 NULL 포인터를 반환.
: strchr 와 strrchr의 차이점
: strrchr은 문자열의 끝에서부터 찾기 시작한다.
strstr (String String) : 문자열 안에 문자열 검색
#include <string.h>
char* strstr(const char* src, const char* sub);
문자열을 찾을 시 해당 문자열의 시작 주소를, 못 찾을 시 NULL 포인터를 반환
: 문자열 안에 특정 문자열이 존재하는지 확인하고 싶을 때 사용하는 함수.
strtok (String Token) : 문자열을 토큰 기준으로 나누는 경우에 활용하는 함수.
#include <stdio.h>
char* strtok(char* str, const char* set);
다음 번 토큰의 주소 값을 반환하며, 반환할 토큰이 없다면 NULL 포인터 반환.
※ strtok 함수를 활용할때의 주의점
: 문자열을 변경시킨다. 때문에 strtok 함수의 호출 이후에도 그 내용이 보전되어야 하는 문자열이라면, strtok함수를 호출하기 이전에 원본을 복사해 두는 것이 좋다.
atoi, atol, atoll, atof : 문자열에 저장되어 있는 숫자 정보는 실제 숫자로 변환하는 함수.
#include <stdlib.h>
int atoi(const char* str); //int형 데이터로 변환.
long atoi(const char* str); //long형 데이터로 변환.
long long atoi(const char* str); //long long형 데이터로 변환.
double atoi(const char* str); //double형 데이터로 변환.
'Programming > C' 카테고리의 다른 글
실행파일이 만들어 지는 과정. (0) | 2013.02.15 |
---|---|
sprintf 함수, sscanf 함수 (0) | 2013.02.15 |
getchar 함수로 입력버퍼 비우는 사용 예. (0) | 2013.02.15 |
bsearch 함수 사용법. (0) | 2013.02.15 |
assert 문 사용하기 (0) | 2013.02.15 |