공부/C언어

17. 배열과 포인트

유저라인 2019. 5. 3. 13:48
728x90
반응형

1. 첫번째 유형

main.c

#include <stdio.h>

void test(char *pdata) { 
   int i = 0; 
   for (i = 0; i < 10; i++) { 
   printf("%d", pdata[i]); 
  } 
} 

void main() { 
char test_Val[10] = { 0,1,2,3,4,5,6,7,8,9 }; 

test(test_Val); 
}

배열을 함수에서 넣어줄 때 주소로 넘겨준다.

 

결과화면

2. 두번째 유형

main.c

#include <stdio.h>

void sub1(int sub1_val) { 
int i = 0; 
int *sub1_val_addr = sub1_val; 

printf("sub1_val=%x\r\n", sub1_val); 

for (i = 0; i < 20; i++) { 
printf("sub1_val[%d]=%d\r\n", i, *sub1_val_addr); 
sub1_val_addr++; 
} 

} 

void main(void) { 
int i = 0; 
int test1[20] = { 0, }; 

for (i = 0; i < 20; i++) { 
test1[i] = i; 
} 

printf("0x%x\r\n", &test1); 
sub1(test1); 

}

 

결과화면

728x90
반응형