본문 바로가기
비트 단기/c

구조체 복습 11/06

by woohyun22 2018. 11. 7.

일반변수 &a =주소 , a = 값

포인터   a = 주소 ,*a = 값


포인터는 *붙이면 값!!



1
2
3
4
5
6
7
8
9
//할당 - 동적메모리 할당을 위해 사용
    //1개를 받았을시 *을 사용
    //1개 이상은 [] 배열을 사용
    //ex1
    short *= new short;
    delete a;//new 하나당 한개 *빼고
 
    short *= new short[10];
    delete[]b;
cs



1
2
3
4
5
6
7
8
9
10
//ex2
    short *= new short[10];
    short *b;
    b = a;//주소 공유
    for (int i = 0; i < 10; i++)
    {
        b[i] = i;
        printf("%d", a[i]);
    }printf("\n\n");
    delete[]b;//해제
cs


ex2 주소 공유 방식 b=a;?


1
2
3
4
5
6
7
8
9
10
11
12
13
//ex3
    short *= new short[10];
    // 포인터 문법으로
    for (long i = 0; i < 10; i++)
    {
        printf("%d %d\n", (a + i), *(a + i));//주소, 값 - 쓰레기값이 나옴
    }
    //배열 문법으로
    for (long i = 0; i < 10; i++)
    {
        printf("%d %d\n"&a[i], a[i]);//주소, 값
    }
    delete[]a;
cs



1
2
3
4
5
6
7
8
9
10
11
12
//ex04
    short ar[5= { 0 };//배열을 모두 0으로 초기화
    // 배열 문법으로
    for (long i = 0; i < 5; i++)
    {
        printf("%d %d\n"&ar[i], ar[i]);//주소 값
    }
    // 포인터 문법으로
    for (long i = 0; i < 5; i++)
    {
        printf("%d %d\n", (ar + i), *(ar + i));//주소 값
    }
cs


배열문법을 쓰는게 좋다. - 배열만 쓰자.




728x90

'비트 단기 > c' 카테고리의 다른 글

함수 이어서~2  (0) 2018.11.08
11/07 함수 시작  (0) 2018.11.08
복습  (0) 2018.11.06
11/5 포인터 구조체  (0) 2018.11.05
11/2 구조체 복습 앞부분 확실히 하기  (0) 2018.11.05

댓글