본문 바로가기

C언어 다시 다지기

DAY004 변수의 초기화 난이도 : ★★☆☆☆■ 변수의 초기화 변수는 전역 변수와 지역 변수로 구분되며, 전역 변수를 초기화하지 않으면 자동으로 0으로 초기화됩니다. 하지만 지역 변수를 초기화하지 않으면 항상 임의의 값으로 초기화됩니다. 처음 프로그래밍을 하다보면 지역 변수를 초기화하지 않아서 발생하는 문제가 종종 있습니다. 변수를 초기화하는 방법은 두 가지가 있으며, 다음은 선언과 동시에 초기화하는 방법입니다. 1int total = 0 ; /* total을 선언하고 0으로 초기화 */ 만약 total을 선언하 후 0으로 초기화하지 않는다면, total은 쓰게기 값이 존재하게 됩니다. 다음과 같이 total을 초기화하지 않고 바로 사용하면 total은 쓰레기 값을 갖고 있기 때문에 원하지 않는 결과가 나옵니다.)12int to.. 더보기
DAY003 변수의 선언 난이도 : ★☆☆☆☆■ 변수의 선언 C언어에서 변수를 사용하려면 선언을 해야하며, 변수를 선언하는 위치에 따라 전역 변수와 지역 변수로 구분됩니다. 전역 변수는 프로그램에서 전반적으로 사용해야 할 때 사용하며, 지역 변수는 특정 함수내에서만 사용됩니다. 변수를 선언하려면 다음과 같은 규칙을 따라야 합니다. 데이터형 변수 이름; 데이터형은 char, int, long등을 사용하면 되고, 변수 이름은 앞에서 설명했던 변수명 선언 규칙을 따라야 합니다. 이 규칙에 따라 다음과 같이 변수를 선언할 수 있습니다. 12int total ; /*정수형 변수 선언*/double average; /*실수형 변수 선언*/ 데이터형은 사용하려는 숫자 변수의 범위 및 용도에 맞게 사용하면 됩니다. total은 합계를 구하는 .. 더보기
DAY002 숫자를 저장하는 변수 난이도 : ★☆☆☆☆■ 숫자 변수의 종류 C언어에서는 숫자의 값을 저장하기 위해 다양한 종류의 데이터형을 제공하며, 데이터형은 크게 정수형과 실수형으로 구분됩니다. 정수형과 실수형 변수는 소수점이 있는 값을 저장할 수 있는지 없는지의 차이로 구분되며, 소수점이 있는 값을 저정하기 위해서는 실수형 변수를 사용해야 합니다. 다음 표는 정수형 변수와 실수형 변수의 종류 및 각 데이터형이 가질 수 있는 값의 범위입니다. ▶ 데이터형의 종류와 값의 범위 정수형 변수에 보면 int형과 long형으로 구분되어 있는 것을 볼 수 있습니다. long형 변수는 원래 4바이트 크기를 갖는 변수이며, int형 변수는 CPU의 처리 능력에 따라 2바이트, 4바이트, 8바이트로 변합니다. 지금의 대부분의 PC가 32비트 CPU를.. 더보기
DAY001 변수란? 난이도 : ★☆☆☆☆■ 변수 변수를 한 마디로 표현하면 메모리에 존재하는 값이며, 메모리 번지를 대신해서 사용합니다 메모리에 존재하는 값은 변경이 가능하며, '변할 수 있는 수'라고 하여 변수라 합니다. 일반적으로 변수는 자료를 저장하고 연산하기 위해 사용됩니다. 다음은 변수의 선언 예입니다. int count; //정수형 변수 count를 선언 count 변수는 정수형(int)으로 선언되었으며, 이 변수는 메모리에서 4바이트 공간을 할당 받아 사용합니다. 변수는 메모리 번지를 대신해서 사용한다고 했습니다. 만약 변수라는 개념이 없다면, 자료를 저장하기 위해서 일일이 번지값을 기억해야 하기 때문에 효율성이 매우 떨어집니다. count 변수를 선언하고 4바이트 공간을 할당 받으면 이곳에 값을 넣거나 변경할.. 더보기
C의 기본적 지식(2) ▶ 문자열의 내부 구조 C언어에서 문자열은 끝에 코드 0(수치 제로)을 붙여 표현한다. 예를 들어 "abcde"라는 문자열은 메모리 내부에서는 다음과 같이 기억된다. 따라서 문자열을 표시하려면 [문자열이 길이 +1]의 메모리 영역이 필요하게 된다. 또한 문자열을 처리할 때 '0이 나올 때까지 처리를 한다'는 식으로 처리를 하게 된다. ▶ 문자열의 내부 구조 문자열의 끝은 아스키 코드로 0이다. 이것을 표현할 때는 단순히 [0]이라고 쓰는 방법과 이스케이프 문자를 이용해 [\0]이라고 쓰는 방법이 있는데, 모두 동일하게 제로를 의미한다. 그러나 양자에는 다음과 같은 뉘앙스의 차이가 있다. 0 -단순한 수치로서의 0이다. \0 -문자열의 끝으로서의 0이다. 따라서 문자열의 끝을 나타낼 때는 그 의미가 보다 .. 더보기
C의 기본적 지식(1) ▶ 공백계 문자의 취급 C 프로그램에서 공백문자는 확대 해석된다. 말하자면 블랭크문자 탭문자 쪽 넘김 개행문자 와 같은 것은 모두 넓은 의미에서 공백문자로 취급된다. 공백문자가 여러 개 연속되어 있어도 1개의 공백과 같은 기능을 한다. C에서는 개행문자를 단순한 공백과 동일시함으로써 행의 개념을 없앤다. ▶ 행의 끝파일 상에서 행의 끝은 개행문자로 표현된다. 그러나 C컴파일러는 이 개행문자를 단순한 공백으로 간주하므로 C에서는 - 그 행의 끝까지 유효한 처리는 없다. 예를 들어 주석문도- 그 행의 끝까지 주석문으로 삼는 규칙은 없다. 어디까지나 주석문의 시작에서 주석문의 끝까지가 유효 범위인 것이다. 주석문이 여러 행에 걸쳐 있을 수도 있다. 단 C에도 행의 끝을 인식하는 기능히 하나 있는데, 그것이 바.. 더보기