20200218 전역변수와 지역변수

NOAH·2021년 2월 17일
0

TIL

목록 보기
14/179
post-thumbnail

TIL

[C] Switch case 사용가능한 자료형

switch에서 판별할 변수는 정수 자료형만 사용할 수 있고,
실수 자료형(float, double)은 사용할 수 없습니다.
단, 문자 자료형(char)도 정수 자료형이므로 switch에서 사용할 수 있습니다.

#include <stdio.h>
#define _CRT_SECURE_NO_WARNINGS  
  // scanf 보안 경고로 인한 컴파일 에러 방지
  
```c
int main()
{
    char c1;
    scanf("%c", &c1);

    switch(c1)
    {
        case 'a': 
        printf("a 입니다.\n ");
        break;
        case 'b':
        printf("b 입니다.\n");
        break;
        default: 
        printf("default \n");
        break;

    }

    return 0;
}

switch 에서 문자 자료형을 사용하여도 정확히 동작합니다. 여기서 case에는 숫자대신 'a' : 처럼 작은 따옴표를 사용하여 문자를 지정해줍니다.단, C 언어에서는 case "Hello": 처럼 문자열은 사용할 수 없습니다.

for 문 변수 여러개 설정하기

// for 반복문에서 변수를 두개, 변수의 증가 폭을 다르게

#include <stdio.h>

int main()
{
    for(int i = 0, j = 0 ;  i < 10 ;  i++, j += 2)
    {
        printf("i : %d, j : %d \n", i, j);
    }

    return 0;
}

for의 초기식에서 변수를 두 개 선언하고 0으로 초기화 하였습니다. 그리고
변화식에서 i는 1씩 증가시키고, j는 2씩 증가시켰습니다. 마지막으로
조건식에서 i < 10 까지 반복하도록 만들었습니다.

변화식에서는 ++,-- 뿐만 아니라 +=, -=, /=도 사용할 수 있습니다.
각 상황에 맞게 연산자를 사용하여 변수의 증가 폭을 조절하고,
변수를 어러 개 제어할 수 있습니다.

for 반복문으로 무한 루프


#include <stdio.h>

int main()
{
    for (;;)
    {
        printf("Hello,World\n");
    
    }

    return 0;
}

초깃값 조건식, 변화식을 모두 생략하면 무한루프

함수 내에만 존재하는 지역변수.

함수 내에 선언되는 변수를 지역 변수라고 한다.
지역 변수가 선언되고 난 후에는 함수 내에서만 접근이 가능하다.
지역이 달라지면 동일한 이름의 지역 변수 선언이 가능하다.
해당 지역을 빠져나가면 소멸되고,
호출 될때마다 새롭게 할당된다.

0개의 댓글