str(n)cpy, str(n)cat, str(n)cmp, 변환 함수와 구조체

 

학습목표

 

- string과 관련된 함수들을 이해하고 알고리즘을 만들 수 있다.

- 변환함수의 종류와 문법을 이해하고 사용할 수 있다.

- 구조체의 이해하고 문법을 익힌 후 사용할 수 있다.

 

str(n)cat

 

char * strcat(char * dest, const char * src);

char * strncat(char * dest, const char * src, size_t);

 

해당 함수를 알고리즘을 통해 구현해 보자!

 

 

문자열을 비교하는 함수들

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

int strncmp(const char * s1, const char *2, size_t n);

 

변환 함수들

 

ASCII 코드를 int형으로 변환해주는 함수

int atoi(const char * str);



해당 함수를 구현하는 것은 맞았으나 main함수에서 실수가 있었다.

Case2에서 이미 str3에 값이 바뀌었는데 이것에 겹쳐 써서 에러가 난 것이다.

그 외 변환 함수들.

 

long atoi(const char * str); 문자열의 내용을 int형으로 변환

double atof(const char * str); 문자열의 내용을 double형으로 변환

 

 

Chap 22. 구조체와 사용자 정의 자료형

 

구조체를 다른 말로 사용자 정의형이라고 한다. 즉 프로그래머가 직접 만들어 쓰는 타입이다.

 

구조체의 문법은

struct ‘사용자가 원하는 자료형의 이름

{

};

ex)

 

struct smart

{

int A;

int B;

};

 

-> 8byte짜리 struct "smart", 변수형을 정의한다고 이해하면 쉽다.

 

 

//struct자리에 class를 집어 넣으면 객체지향

 

struct를 함수 내부에 적으면 지역 변수로써 다른 함수에서는 사용 할 수 없다. 때문에 전역변수로 사용해야 한다.

struct는 원형만 만들어서는 사용할 수 없고 선언을 해야 사용가능하다.

 

//C++에서는 변수선언 시 struct를 선언하지 않아도 사용 가능하다.

구조체는 사용자가 원하는 변수형의 모듬을 생성하여 사용하는 것과 같다.

이것은 붕어빵틀을 만드는 것과 같은데 붕어빵 틀, struct안에 변수,3개 선언했다고 가정하면 해당 structure를 하나 만드는 경우 해당 변수 3개가 있는 자료형이 만들어졌다고 생각하면 된다.












 

반응형
Posted by newind2000