Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

새싹교실/2017/C언어가르쳐조/5월23일

From ZeroWiki
Revision as of 08:17, 23 May 2017 by 219.255.207.60 (talk)

예정

  • 2시간 강의
  • 함수 잠깐 복습
    • 함수 선언, 선언 후 정의, main 함수, 재귀 함수
  • 대망의 포인터
    • C의 자료 저장 방식
    • 포인터 : 주소값을 저장하는 변수
type

*{{{identifier}}} {{{, ...}}};

    • *(unary), &(unary)
    • 주소 연산
    • void 포인터
    • 배열과 포인터의 관계
    • [] 연산자
    • 함수 인자값으로서의 포인터
    • 값에 의한 호출,,call by value,, , 참조에 의한 호출,,call by reference,,
    • 포인터 배열/ 배열 포인터/이중 포인터/이차원 배열과 포인터
===============================================================================
  • 더 많은 포인터
    • 동적 메모리 할당
    • 스택 영역/힙 영역
    • void* malloc(size_t size);
    • free(void* ptr);
    • 메모리 누수,,memory leak,, , 허상 포인터,,dangling pointer,,
    • NULL 포인터
    • void* realloc(void *ptr, size_t size);
    • calloc 함수
    • const * / * const(상수 포인터/ 포인터 상수)
    • 함수 포인터
type

(*{{{identifier}}})({{{[}}}{{{[type]}}} {{{, ...}}}{{{]}}});

    • typedef

진행

  • 등호연산자에서 왼쪽 : r-value, 오른쪽 : l-value.
  • 포인터의 특징 : 연산을 할 수 있다.
  • *x+1 을 하면 1칸 이동인데 1칸의 기준은 자료형이다.(int 는 4칸...)
  • 포인터와 일반 상수를 동시에 선언 할 수 있다.
      • 포인터도 타입이기 때문에 한줄에 한 포인터를 선언하는 것을 권장함.
  • 모든 자료형은 포인터를 가진다.
    *void 포인터 같은 경우는 어떤 자료형이든 다 가르킬 수 있다. 근데 뭘 가르키고 있는지 몰라서 그냥 출력하면 error 남.
        void *p_v; 에서 *p_v; 하면 error --> (int    
     
 ~~회장님 등장 포인터 쓰레기라는 말을 남기고 가심.~~

실습

기타 / 후기 / 방명록


새싹교실/2017/C언어가르쳐조 새싹교실/2017