본문 바로가기

C

(C언어) 포인터 예제

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

간단한 포인터 예제다.


요즘 또 C를 안하니까 기억이 잘 안난다.


맨 마지막에 // a, a, p의주소(%x), a 의 결과 보면 이해가 간다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<stdio.h>
 
int main(){
    int a=10;
    int *p=NULL;
    int **p2=NULL;
 
    p=&a;  // a를 가르키는 포인터 p
    p2=&p;  // p를 가르키는 포인터 p2
 
    printf("%x %x %x \n", &a, &p, &p2);
    // a의 주소, p의 주소, p2의 주소 
 
    printf("%x %x %x \n", &a, p, p2);
    // a의 주소, a의 주소, p의 주소 
 
    printf("%d %d %x %d \n"*&a, *p, *p2, **p2);
    // a, a, p의 주소(%x) , a
 
    return 0;
}
cs







=========================



포인터 예제 2


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<stdio.h>
 
int main(void){
 
    char a[5]="abcd";
    char *pa ="ABCD"// 한글자라서 * 빼버리면 저장이 안된다.
    // 배열저장하듯 사용도 가능. 주소값을 넣는다고 생각. 
 
    printf("%s \n", a);
    printf("%s \n", pa);
    printf("%c \n"*a);
    printf("%c \n"*pa);
    printf("배열 %c %c %c %c %c \n", a[0],a[1],a[2],a[3],a[4]);
    printf("배열 %c %c %c %c %c \n", pa[0],pa[1],pa[2],pa[3],pa[4]);
    
    a[0]='m';
    
    printf("%s \n", a);
    printf("%s \n", pa);
 
    return 0;
}
cs