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

11/2 구조체 복습 앞부분 확실히 하기

by woohyun22 2018. 11. 5.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
short AppleColor = 10;//카멜 표기법
    //속성을 모아놓은 박스 = 구조체
    //구조체 이름은 전부 대문자로 
    //스코프는 자바처럼 바로 붙여쓰기
    FRUIT apple, banana, orange;
    apple.color = 10;
    printf("%d", apple.color);//구조체 쓰는형식1
 
    FRUIT apple{ 10,20,30 };//구조체 쓰는형식2
    //순서대로 값이 들어가고, 많이 쓰는 방식
    //구조체는 하나의 타입으로 본다.
    
    banana = apple;//속성이 대입된다.
    long orange;//type이 달라서 대입이안된다.
 
cs




1
2
3
4
5
struct FRUIT {
    char color;
    short price;
    long weight;
};//구조체는 밖으로 빼기?
cs


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    FRUIT a = { 10,20,30 };
    FRUIT *b;//공유나 할당이 되어야 사용가능하다.
    //포인터 구조체는 . 대신 -> 를 쓴다.
    b = &a;        
    //printf("%d\n", (*b).color);
    printf("%d\n", b->color);//값
    //위에 두개는 같은 형식이다.
    printf("%d\n"&b->color);//주소   &는 맨뒤의 변수의 &이다.
    b -> color = 20;
 
    FRUIT *c;//바로는 쓸수없다.
    c = new FRUIT;
    c->color = 100;
    printf("\n\n");
    printf("%d %d %d\n", b->color, b->price, b->weight);//값을 나타냄
    printf("%d %d %d\n", a.color, a.price, a.weight);//값을 나타냄
    printf("\n\n");
    printf("%d %d %d\n"&b->color, &b->price, &b->weight);//주소를 나타냄
    printf("%d %d %d\n"&a.color, &a.price, &a.weight);//주소를 나타냄
    //구조체 포인터 값        b->color,일반 구조체 값        a.color
    //구조체 포인터 주소    &b->color,일반 구조체 주소    &a.color
cs


728x90

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

복습  (0) 2018.11.06
11/5 포인터 구조체  (0) 2018.11.05
11/1 복습 포인터 보충1  (0) 2018.11.05
10/30 복습 포인터부터  (0) 2018.11.05
11/2  (0) 2018.11.02

댓글