본문 바로가기
휴지통/C 언어

C언어 함수들1

by 신재권 2021. 2. 11.

#include <conio.h>

int _getch(void)

문자 입력하기

 

int _putch(int ch);

문자 출력하기

 

#includ <string.h>

int _stricmp(const char *s1, const char *s2);

문자열을 비교하는데 대, 소문자 구분을 안함

 

char *strstr(const char *string, const char * strCharSet);

string은 검색될 문자열 , strCharSet은  검색할 문자 또는 문자열

검색 성공시 검색 위치의 포인터 값(번지) 반환

실패시 NULL반환

 

char * strchr(const char *satring, int c);

string은 검색될 문자열, c는 검색할 문자

찾으면 그 위치의 메모리 번지 값 반환, 찾지 못하면 NULL반환

ret(검색된 번지) - 문자열의 시작번지 = 몇번째 위치(값)

ret은 문자열의 시작번지보다 크거나 같다

 

뒤에서 부터 검색을 할려면 strrchr();

 

문자열 중에서 일치되는 첫문자의 위치 구하기

size_t strcspn(const char *string, const char * strCharSet);

string은 검색될 문자열, strCharSet은 검색할 문자의 세트(집합)

문자 세트 중에서 하나의 문자라도 일치하면 string에 있는 그 문자의 위치를 반환, 문자가 없으면 문자열의 길이 반환

 

문자열 중에서 일치되지 않는 첫문자의 위치 구하기

size_t int strspn(const char *string, const char *strCharSet);

string은 검색될 문자열, strCharSet은 검색할 문자의 세트(집합)

만약 문자열 중에 문자 세트가 일치하는 것이 없다면 그 위치를 반환

 

문자열 검색 함수

strchr(): 문자열 내에서 처음으로 나타나는 지정된 문자를 찾음

strrchr(): 문자열 내에서 마지막으로 나타내는 지정된 문자를 찾는 것을 제외한다면 strchr과 동일

strcspn() : 어떠한 문자열이 포함되어 있는 문자들이 다른 문자열에서 처음으로 나타나는 위치를 찾음

strspn() : 포함되지 않는 문자를 찾음

strpbrk() : strcspn()과 동일 하지만 널 문자를 검색대상에서 제외한다.

strstr() : 문자열을 문자열 내에서 찾는다.

 

문자열을 구분자로 분리하기 

구분자를 직접 설정해야한다 " " (큰 따옴표 안에 , 공백설정 가능)

char * strtok(char * s1. const char* s2);

s1은 원본 문자열, s2는 구분 문자 or 구분 세트

strtok는 내부적으로 이전에 검색한 위치를 저장함

원하는 문자를 찾으면 그 값에 NULL값을 넣음

그 다음값부터 다시 찾음(while문 사용)

 

char *strpbrk(const char *s1, const char *s2)

s1은 검색될 문자열, s2는 구분 문자 또는 문자세트

while문으로 반복시 

구분문자 기준으로 뒤에는 다 잘라버린다 .

똑같이 이전 위치를 저장한다. 

즉 공백을 포함하면 공백기준으로 잘라서 출력한다.

 

특정 문자로 문자열 채우기

char * _strset(char *s, int c);

s는 채울 버퍼이고, c는  채울 문자이다.

문자열을 대문자로 반환

char *strupr(char* string);

string은 버퍼나 , 문자열을 가리키는 포인터이다.  상수는 불가능

대문자로 변환하게 되는데, 영문자가 아닌 것은 반환하지 않는다. 

대문자 -> 대문자, 소문자 -> 대문자

 

char *strlur(char * string)

위와 같지만 소문자로 변환한다.

 

문자열 거꾸로 뒤집기

char * strrev(char *string)

string은 거꾸로 뒤집혀질 문자열이다. 버퍼에 그대로 유지된다.

 

<malloc.h>

문자열 숭복 생성

char *strdup(const char* string)

strdup는 내부적으로 malloc 함수를 사용한다.

string과 같은 길이의 공간이 내부적으로 생성된다.

free함수로 해제를 반드시 해주어야 한다.

잠깐 임시버퍼가 필요할 때 사용한다.

 

<stdio.h>

int sprintf(char *buffer, const char* format[,argumen]...);

buffer는 문자열 변수

sprint는 printf와 사용법이 유사하지만 형식화된 문자열이 생성 가능핟.

 

<stdilb.h>

long strtol(const char* s, char **stop, int radix);

s는 변경할 문자열, stop끝나는 부분, radix는 진수

16진수 ->10진수 로 변경시 radix=16 , 즉  문자열에 있는 진수를 넣으면 된다.

10진수로 변경하는 함수이다 .

unsigned long strtoul () ; 위함수와 동일한데 부호가 없는 반환값을 가진다.

'휴지통 > C 언어' 카테고리의 다른 글

C언어 함수들2  (0) 2021.02.25
매크로와 선행처리기(Preprocessor)  (0) 2021.02.12
메모리 관리와 동적할당  (0) 2021.02.10
파일입출력2  (0) 2021.02.07
파일 입출력1  (0) 2021.02.06