[C] 2. 변수(Variable)

Wonder_Land🛕·2022년 7월 7일
0

[C]

목록 보기
2/18
post-thumbnail
  1. 변수(Variable)
  2. 변수의 이름
  3. Q&A
  4. 마치며

1. 변수 (Variable)

1) 변수 (Variable)

  • 변수(Variable)
    : 바뀔 수 있는 어떤 값을 보관하는 메모리 공간

컴퓨터는 어떤 데이터를 기억할 때,
컴퓨터의 메모리인 'RAM'에 이를 기록합니다.

데이터의 각 구역은 순차적으로 숫자를 부여하여 이름을 붙이게 됩니다.
(예를 들어, 0번, 1번, ... 이런 식이죠)

예를 들어,
주소가 0x1234인 방에 있는 값을 4로 업데이트하라고 한다면,
0x1234의 내용을 불러와서 4로 바꾼 후, 다시 넣는 작업을 일일이 써야합니다.

우리는 이 주소를 직접 일일이 쓰는 것보다
변수 room으로 지정한다면 위와 같은 작업 없이,
더 수월하게 접근할 수 있습니다.


2) 변수의 선언

#include <stdio.h>

int main(){
	int a;	# 변수 'a' 선언
    a = 10;
    printf("a : %d", a);

	return 0;
}

위의 예제에서
int a;를 볼 수 있습니다.

이는 컴파일러에게 우리가 int형 변수 a를 쓴다고 알려주는 것입니다.

(1) 변수의 타입(Type)

(1.1) 정수형 타입

  1. char
    : 1 byte
    : singed와 unsigend를 사용할 수 있습니다.

  2. short
    : 최소 2byte
    : singed와 unsigend를 사용할 수 있습니다.

  1. int
    : 최소 2btye이지만, 보통 4byte로 구현
    : singed와 unsigend를 사용할 수 있습니다.
  1. long
    : 최소 4byte
    : 32비트 시스템 : 4byte
    : 64비트 시스템 : 8byte

  2. long long
    : 최소 8byte
    : singed와 unsigend를 사용할 수 있습니다.

(1.2) 실수형 타입(Type)

  1. float
    : 4byte

  2. double
    : 8byte

  3. long double
    : 최소 8byte

#include <stdio.h>

int main(){
	float a = 3.14f;
    double b = 3.14;
    print("a : %f, b : %f", a, b);
    
	return 0;
}

float a = 3.14f를 보면,
선언할 때 f를 붙였음을 알 수 있는데요,
double형을 선언할 때는 안 붙였습니다.

이는 float형을 표시해주기 위해 f를 붙이는 것입니다.

만약 f를 붙이지 않는다면 double형으로 인식하여 문제가 생길 수도 있습니다.


2. 변수의 이름

변수의 이름을 정의할 때는 몇 가지의 규칙이 있습니다.

1) 이름 정의의 규칙

(1) 문자, 숫자, _(Underbar)로 조합

비쥬얼 스튜디오와 같은 컴파일러는 유니코드를 지원하기 때문에 한글도 사용가능하지만, 관습상 영어로 작성하는 것이 좋습니다...

abc_123_d4 = 3

(2) 숫자로 시작할 수는 없습니다

123abc = 3는 안됩니다!😢

(3) 영어는 대소문자를 구별합니다.

variableVARIABLE은 다른 변수입니다.

(4) C에서 제공하는 예약어와 동일한 이름은 사용할 수 없습니다.

예약어(Keyword) : 특정 기능을 수행하기 위해 사전에 정의된 단어
ex) True, False, None, if, while, and, break, class, ⋯


2) 좋은 이름!

int a, b, c;

위처럼 변수를 선언할 시에는,
각 변수가 어떤 일을 하고 있는지 알 수 없습니다🤔

int num_students, total_score;

위와 같이 작성하다면 각 변수가 어떤 일을 하고 있는지 예상할 수 있죠.

이처럼 변수의 이름을 보았을 떄,
해당 변수가 어떤 동작을 하는지 이해할 수 있는 이름이 좋습니다.

즉,

  1. 어떤 데이터를 보관하는지 알 수 있어야 합니다.
  2. 영어로 읽히는 것을 권장합니다.
  3. 한 가지 스타일을 고수하자.

가 좋은 이름의 규칙입니다.

여기서 3번의 '스타일'은 변수의 이름을 짓는 스타일인데, 크게 두 가지로 볼 수 있습니다.

(1) 변수 작명의 스타일

(1.1) Snake Case

  • Snake Case
    : 변수 이름 중, 띄어쓰기를 _로 표현하는 방식
    ex) snake_case, wonder_land

(1.2) Camel Case

  • Camel Case
    : 변수 이름 중, 띄어쓰기를 대문자로 구분하는 방식
    ex) CamelCase, WonderLand

3. Q&A

-


4. 마치며

사실 SWEA에서 C 강의를 보는데,
조금 딱딱해서 그런지 재미가 없더라구요.....😒

그리고 동영상 강의다 보니까 제가 velog에 공부한 내용을 정리하려고 하면,
시간이 너무 오래 걸렸어요...

30분 영상 기준 2시간을 velog에 정리하고 있더라구요... 배보다 배꼽이 더 크네요...

그래서 그런지 하기가 싫더라구요.......ㅋㅋㅋㅋㅋ

그래서 나무위키에서 C와 관련된 내용을 읽어보면서
마음가짐을 다시 잡아보려고 하는데,
모두의 코드라는 사이트를 발견했습니다.

C와 C++에 대한 내용이 잘 정리된 사이트더라구요. 저도 보고 있는데 너무 맘에 들었어요.

  1. 내가 필요한 C, C++에 대한 내용
    (특히나, C를 배우기 전 필수로 알아야 하는 이론적인 내용도 잘 정리해주셨습니다... 이건 정말 꼭 읽는게 좋다고 생각했습니다.)
  2. 중구난방으로 정리된 것이 아닌, 깔끔하게 정리된 강의👍
    (이 덕분에 제 velog에 정리하는 시간이 많이 줄어들었습니다. SWEA같은 경우는, velog에 정리하는데 시간이 너무 오래 걸려서 하기가 싫더라구요...)
  3. 작성자분께서 여러 강의나 책을 공부하면서 정리해주신 내용
  4. 여러 학습자에게 검증받은 내용
  5. 사실 'the c programming language'를 읽으려 했지만...영어가 무섭네요.....ㅠㅠ

위와 같은 이유로 C와 C++은 모두의 코드를 활용(인용, 참고)하여 제 velog에 공부 내용을 정리해볼 생각입니다.

나 자신 화이팅😉

[Reference] : 위 글은 다음 내용을 참고, 인용하여 만들어졌습니다.

profile
아무것도 모르는 컴공 학생의 Wonder_Land

0개의 댓글