C++ 97

레퍼런스

포인터 type * p; 레퍼런스 type &r = 기억공간이름(변수명) // 기억공간을 공유 // 반드시 선언과 동시에 초기화!!!! 사용시 주의점 선언과 동시에 초기화 int n=20, m=20; int &ref = n; ref = m // 변경이 불가능하다, 상수화 된다. int &ref; // 초기화가 되지 않았다. 상수로 초기화하면 컴파일오류 int &ref = 10; // 기억공간(변수명) 레퍼런스의 장점 이전에는 포인터를 이용하여 스왑을 하였지만.... void swap(int &rx, int &ry); int main() { int a = 100, b = 200; cout 형식인자는 레퍼런스 변수 실인자와 형식인자는 기억공간을 공유한다. -> 많은 리턴값을 받아오는데 2,3번이 유용하다. ..

C++/summary 2010.05.04

문자열의 표현 && 유용한 문자열 함수들.

문자열이란 ? : 문자열 코드값들 + NULL 값 문자열 상수 = > 시작주소값 반환. "Hello(NULL) "; 널까지 포함된다. 문자열 1. 배열을 이용 : 데이터를 복사 함으로써 자신의 공간을 할당받기때문에 변경 가능하다. char s[] = "hello"; *s = 'T'; 2. 포인터변수를 이용 : 원본을 참조만 하기 때문에.. "Hello" 는 문자열 상수이기 때문에 변경 불가능 char *p = "hello"; *p = 't';// 변경이 불가능하다. // 주소값을 참조만 하기 때문에. char *q= s; *q = 't'; // 이건 변경가능하다. 문자열 집합을 "hello" , "android", "gandus" , "bye" 이걸 저장하려면 2차원 배열을 이용 char s[7][10]..

C++/summary 2010.04.29

Const 포인터를 이용해서 함수를 효율적으로 만들기.

const int * p; // 읽기전용 포인터 p = & a; // 읽기(참조)는 가능하지만, 값 변경을 할 수 없다. 이것은 중요하다. void sum (int a , const int * b, int * c) // b는 그저 전달만 하고,수정이 되지 않을때는 명확하게 구분지을 수 있다. int * const p = &a; // 상수 포인트 p = &b; // 오류가 난다. 주소값이 상수화 되어서. ________________________________________________ void swap( *a, &b) swap(&a, &b);

C++/summary 2010.04.27

문자함수. 요약정리

컴퓨터에서는 각각의 문자에 숫자코드를 붙여서 표시한다. 아스키코드(ASCII code): 표준적인 8비트 문자코드 유니코드(unicode) : 표준적인 16비트 문자코드 char s[] = "Hello"; = {'H', 'e', 'l', 'l', 'o', '\0'}; 이것의 배열은 크기는 6입니다. 문자열 복사방법 char s[10]; strcpy(s, "Hello")//문자열 복사 //함수정의 void strcpy(char *a, char *b); strlen("Hello")//크기는 5가된다. [문자열 처리 함수] 함수 설명 isalpha(c) c가 영문자인가?(a-z, A-Z) isupper(c) c가 대문자인가?(A-Z) islower(c) c가 소문자인가?(a-z) isdigit(c) c가 숫자..

C++/Function 2010.04.21

이진검색

이진검색 전에는 미리 asc 정렬이 필요하다. 1. 일단 로우 값 ~ 하이 값 의 중간값을 선택 2. 중간값이 34보다 작으면 다시 중간 값을 원래 중간 값 +1 로 재정의 3. 로우 - 하이가 값이 바뀌면 종료(탐색값이 없다.) int binary_search(int list[], int n, int key) { int low, high, middle; low = 0; high = n-1; while( low list[middle] )// 중간 원소보다 크다면 low = middle + 1; // 새로운 값으로 low 설정 else high = middle - 1; // 새로운 값으로 high 설정 } return -1; }

C++/summary 2010.04.20