C:Variable, Operator

aiden·2023년 3월 14일
0

C

목록 보기
2/28

Variables

간단한 계산 프로그램을 만들어보자.

#include <stdio.h>

int main(void) {
	3 + 4;
	return 0;
}

이 코드는 문제 없이 실행된다. 하지만 아무것도 출력되지 않는다. 이 프로그램에서는 덧셈을 요구하기만 했지, 덧셈한 결과를 어디에도 저장하지 않았고, 결과를 출력하라는 명령도 내리지 않았다. 정말 덧셈만 한 것이다. 그렇다면 우리는 연산의 결과를 어떠한 공간에 저장하여 필요할 때 꺼내 쓸 수 있어야 할 것이다.
이 때 필요한 것이 바로 변수(variable)이다.

👉🏻값을 저장할 수 있는 메모리 공간을 변수라 한다.

변수를 선언한 후 그 변수의 이름을 통해 값을 저장하고 참조할 수 있다.

#include <stdio.h>

int main(void){
	int num;
    num = 20;
    printf("%d\n", num);
}

20

int num; 문장이 바로 변수의 선언문이다. 이 문장을 살펴보면, int는 변수의 자료형인 정수를 저장할 수 있는 메모리 공간을 할당한다는 의미이고, num은 변수(메모리 공간)의 이름이다.
num = 20에서 = 은 대입연산자로, 값의 대입을 의미한다. num이라는 변수에 20을 대입한다는 의미이다.

이 때, 선언된 변수에 처음으로 값을 저장하는 것을 초기화라고 한다. 초기화 이후에 값을 변경하는 것은 대입/대입연산이라 한다.
C언어에서는 변수 선언과 동시에 초기화하는 것이 가능하다. 또, 여러 변수를 한 문장에 같이 선언하거나 초기화할 수 있다.

#include <stdio.h>

int main(void) {
    int num; //변수 선언
    num = 20; //변수 초기화
    num = 30; //대입연산

    int num0 = 40;

    int num1, num2;
    num1 = 10, num2 = 90;
    
    int num3 = 70, num4 = 100;
}

📌 변수 이름 규칙

변수를 선언할 때, 변수의 이름은 어떻게 정해야 할까?
프로그래머 마음이다. 하지만 오류가 나지 않도록 규칙을 지켜야 하며 오류가 나지 않더라도 관례를 따르는 것이 보통이다.
아래의 규칙은 반드시 지켜야 할 규칙이다.

📍변수의 이름은 알파벳, 숫자, 언더바로 구성된다.
📍C언어는 대소문자를 구분한다.
📍변수의 이름은 숫자로 시작할 수 없다.
📍이름 사이에 공백이 들어갈 수 없다.
📍키워드는 변수의 이름으로 사용할 수 없다.

변수를 선언할 때, 변수의 이름은 의미를 부여하여 짓는 것이 좋다. 코드가 길어지거나 다른 사람과 협업을 할 때, 이름을 임의로 붙인다면 이 변수가 무엇을 뜻하는지 알기 어렵다.

Operators

C언어에서 제공하는 연산자들에 대해 알아보겠다.

대입 연산자(=)

대입 연산자는 오른쪽에 있는 값을 왼쪽 변수에 대입한다.

산술 연산자(+, -, *, /, %)

+ : 두 피연산자의 값을 더한다.
- : 왼쪽의 피연산자 값에서 오른쪽 피연산자의 값을 뺀다.
* : 두 피연산자 값을 곱한다.
/ : 왼쪽의 피연산자 값을 오른쪽 피연산자 값으로 나눈다. 정수끼리 연산할 경우 몫이 나온다.
% : 나머지 연산. 정수 연산만 가능하다.

👉🏻함수 호출 시 인자로 연산식을 전달할 수 있다.
ex) printf("%d", 3 + 5);

👉🏻+, - 는 부호의 의미를 갖기도 한다.
ex) +2, -3

증가, 감소 연산자

증가, 감소 연산자는 매우 많이 사용되므로 알아두어야 한다.

전위 연산

++num : 1 증가 후 문장의 나머지 연산 진행
--num : 1 감소 후 문장의 나머지 연산 진행

후위 연산

num++ : 문장의 연산 진행 후 1 증가
num-- : 문장의 연산 진행 후 1 감소

관계 연산자(<, >, ==, !=, >=, <=)

관계 연산자들은 조건을 만족하면 참(1), 만족하지 않으면 거짓(0)을 반환한다.

👉🏻C언어에서 0은 거짓, 0이 아닌 모든 값들은 참이다.

논리 연산자(&&, ||, !)

&& : 논리곱 and
|| : 논리합 or
! : not

콤마 연산자(,)

둘 이상의 변수 동시 선언, 여러 인자를 함수로 전달, 둘 이상의 문장을 한 줄에 작성할 때 등의 상황에 사용한다.

복합 대입 연산자

복합 대입 연산자는 매우 편리하여 자주 사용하므로, 알아두는 것이 좋다.

*=, /=, %=, +=, -=, <<=, >>=, &=, ^=, |=

a = b : a = a b
a /= b : a = a / b
a %= b : a = a % b
a += b : a = a + b
a -= b : a = a - b


변수와 연산자에 대해 알아보았다. 연산자의 우선순위를 알아둘 필요가 있는데, 포스팅에서는 다루지 않고 실습을 통해 연습할 것이다. 다음에는 데이털 표현 방식과 자료형에 대해 공부하겠다.

profile
파인애플 좋아하세요?

0개의 댓글

관련 채용 정보