본문 바로가기

미분류

170315 C (포인터, 반복문)

1. 포인터

포인터는 값을 가리키지 않고 주소를 가리킨다.

단항 연산자로서의 * 와 &는 변수계산에 사용된다.


&연산자는 주소값을 저장하는 연산

* 연산자는 자신에게 저장된 주소값이 들어있는 곳의 데이터


C 언어에서 포인터는 다음과 같이 정의할 수 있습니다. 


(포인터에 주소값이 저장되는 데이터의 형) *(포인터의 이름);


혹은 아래와 같이 정의할 수 도 있습니다.


(포인터에 주소값이 저장되는 데이터의 형)* (포인터의 이름);


int *a;

int  b;


a = &b;

b = 2;


printf("b : %d\n", b);

printf("*a : %d\n", *a);



b에 2가 수록되어 있고, a에 b의 주소가 있는 모양이다.

*a를 사용했을 경우 a에 들어있는 주소 b에 가서 b의 데이터를 가져온다.



2. 반복문

반복문은 어떠한 행위를 반복해서 구현하는데 이를 활용하여 규칙적으로 연속되는 동작이나 같은 행위를 반복해서 구현할 수 있다.

for문


     for(초기문; 조건문; 증가문){

            반복될 내용;

     }



for문은 초기값으로 처음 시작할 값을 설정하고 조건문을 검사하여 true면 실행하고 false면 반복문을 빠져 나온다.

한번의 실행을 거쳐 빠져나온 값은 증가문에서 설정한대로 적용되어 반복한다.


  

     for(i=1; i<5; i++){

          printf("%d 번 실행했습니다.", i );

     }



예제에서는 1부터 4까지 반복실행되어 값을 출력한다.


while문

    

     while(조건문){

          반복할 내용;

     }



while문은 조건을 검사해서 true면 반복하고 false면 빠져나온다.


    

     while(i<5){

          int i = 0;

          printf("%d 번 실행했습니다.", i);

          i++;

     }



예제에서는 for문과 마찬가지로 i<5 까지 문자열을 출력하는 반복을 거친다. 초기값, 증가값이 반복문 안에 포함됨.