U E D R , A S I H C RSS

CNight2011/고한종 (rev. 1.15)

CNight2011/고한종

배열


Round 0,1


배열이 근본적으로 포인터란 것은 이미 알고 있었으나 실제 컴파일러에서 이런식으로 표현 된다는 것을 배웠다.

ex)

int arr5;
라고 한다면

printf("%d",arr);

-> arr의 주소가 나온다.
-> 포인터 연산자를 동원해서 표현하자면 &arr0이 된다.

arri = *&(arr0+sizeof(int)*i);
arrij *&(arr00 sizeof(int)*i*j+sizeof(int)*i); -> 맞겠지여...?

실제 메모리상에서는 2차원이든 3차원이든 메모리상에서는 그냥 선형으로 저장된다.
사실 이것도 새싹교실때 이미 배웠던 내용. 원희형.. 보고싶어요.


포인터

Round 0,1


datatype* : 포인터 자료형 선언법 -> 이게 독자적인 자료형이라고 봐도 무관.
*val_name : 해당 포인터변수가 가르키는 변수의 값을 참조
&val : &연산자 우측의 주소값을 불러온다.(이건 val자리에 들어가는 변수가 포인터 자료형이 아니여도 됨)

포인터 변수에 주소값이 저장된다고 생각하는것보다. 그 주소에 해당하는 변수를 가르킨다고 생각하는게 옳다.

다중 포인터도 배웠다.

구조체

Round 1


  1. 선언법
    1)
    typedef struct name{
    data...
    data...
    ...
    }nickname;
    사용할땐 nickname만 써주면 된다.

    2)
    struct name{
    date...
    ...
    }
    사용할때마다 struct name 라고 해야한다.

    3)
    typedef struct{
    data...
    ...
    }nickname;
    닉네임만 선언하는 방법. 비표준이란다.

  2. 개념
    의미가 통하는(?) 유용한 (?) 데이터들을 그룹화 한다고 생각하면 된다.
    일단 해두면 sort할때 매우 편하다 한가지만 sort해두면 나머지도 따라오니까!
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:22:41
Processing time 0.0531 sec