공부하자/C언어 31

C언어 문법 공부 4장 [C언어의 지역 변수]

1. 지역 변수 지역 변수란 어떤 한정되 지역 에서만 사용할수 있는 변수를 말합니다. 블럭 안에서 선언된 변수는 모두 지역 변수이고, 이때 이 블록이라는 한정된 지역에서만 이 변수를 사용할수 있습니다. 그리고 지역 변수는 그 변수가 선언된 블럭이 끝나면 그 변수에 들어있는 값을 잃게 됩니다. 참고로 지역 변수를 선언할때는 블럭의 윗부분에 선언을 해야 합니다. 모든 작업 전에 선언해야 하죠. 그렇지 않으면 에러가 납니다. 예제 소스 하나를 보도록 하죠. /* 파일 이름 : C4-1.C 프로그램 내용 : 지역 변수를 설명하는 프로그램. */ void main(){int a;{int b;a=5;b=10;}a=10;} 이 소스는 지역 변수를 설명하기 위한 간단한 소스 입니다. 우선 a라는 변수는 main함수의 ..

C언어 문법 공부 3장 [C언어의 특수문자]

5. 특수 문자 이제 마지막으로 특수 문자에 대해 알아보죠.특수 문자는 말 그대로 특별한 문자인데, 예를 들자면 ""안에서 "를 쓴다던지 할 때에 쓰입니다.특수 문자는 모두 \(역슬래쉬)로 시작합니다. 그럼 특수 문자를 자세히 살펴보죠. \a Beep음을 컴퓨터 스피커로 출력\b Back space(한칸 뒤로 갑니다..)\n 현재 위치한 줄의 다음 줄로 내려갑니다.\r 현재 위치한 줄의 멘 처음으로 갑니다..\t 수평 Tab\v 수직 Tab\\ \(역슬래쉬)\' 작은 따옴표\" 큰 따옴표\0 NULL문자\0?? 8진수 ??에 대한 문자\x?? 16진수 ??에 대한 문자. 위에서 다 읽어보면 아실건데 \0??의 예를 들어보면.. \013은 아스키 코드 8진수 13에 해당하는 문자이고.. \x1F는 아스키 ..

C언어 문법 공부 3장 [C언어의 문자열]

4. 문자열 C언어 에는 문자열에 관한 데이터 형태가 없기 때문에 문자열을 처리하기 위해서는 특별한 방법을 사용해야 합니다. 그 방법 중에는 배열을 사용한 방법과 포인터를 사용한 방법이 있는데 포인터를 사용한 방법은 포인터를 모른상태에선 이해가 어려울 것 입니다.그래서 여기서는 배열을 이용한 방법만을 배우기로 하고 포인터를 사용한 방법은 포인터를 배운 후에 배우겠습니다. (1) 문자열 상수 (실제값). 상수 중에서도 실제값 표현을 대해 배워보겠습니다.문자열 실제값은 아주 간단한데 그냥 ""로 문자열을 묶어 주기만 하면 됩니다.예를 들자면 "String" 이런 식으로정말 간단하죠? 그럼 이 상수가 내부적으로는 어떻게 처리될까요? 메모리 상에는 이런 식으로 들어갑니다.주소 0x01 0x02 0x03 0x04..

C언어 문법 공부 3장 [C언어의 상수]

3. 상수상수는 프로그램에서 변할수 없는 값을 말합니다.상수는 크게 두가지로 나눌수 있는데 바로 실제값과 기억장소를 갖는 상수 입니다. (1) 실제값실제값은 말 그대로 실제값 입니다. 실제값이라고 밖에는 설명할수가 없겠군요.실제값중 수를 나타내는 실제값을 알아보죠. 수를 나타내는 실제값은 정말 쉽습니다. 10진수의 경우 부호를 쓴 후 값을 그대로 써주면 됩니다. 예를 들어 +20, -20, 5.2 이것 처럼 말입니다. 그런데 부호가 +일 때는 생략해도 됩니다. 그리고 8진수의 경우는 앞에 0을 써주면 됩니다. 예를 들어 013은 8진수 13이고, -015는 8진수 -15입니다.또한 8진수는 0에서 7까지의 8개의 수만 쓴다는 것도 기억하세요.마지막으로 많이 쓰이는 16진수는 앞에 0x를 써 주면 됩니다...

C언어 문법 공부 3장 [C언어 데이터의 종류 및 변수]

이번 강좌에서는 C프로그램에서의 데이터에 대해 알아보도록 하죠. 1. C언어 데이터의 종류 C언어에서 데이터를 크게 분류하자면 수치 데이터와 문자 데이터로 분류할수 있습니다. 수치 데이터는 0, 1, 100, 200등의 정수와 1.0, 2.0등등의 소수가 있고, 문자 데이터에는 'A', 'B'등의 문자와, "ABCDEFG"등의 문자열이 있습니다. 그리고 데이터는 상수와 변수로도 구분할수 있습니다. 2. 변수 변수란 프로그램에서 변할수 있는 값을 말합니다.정확히 말하지면 어떤 기억장소가 주어지는데 그 안의 값을 마음데로 바꿀수 있는 기억장소를 말합니다.변수를 사용하기 위해선 반드시 변수를 선언해야 합니다.즉 기억장소를 마련해야 쓸수 있는 것이죠 그럼 변수를 선언하는 방법에 대해 알아볼까요? 변수 선언은....

C언어 문법 공부 2장 [C 프로그램의 구성 요소]

1. C 프로그램의 구성 요소C프로그램을 구성하는 요소들에 대해 알아보도록 하죠.C프로그램을 구성하는 요소에는 키워드, 심볼, 문장, 블럭등이 있습니다. (1) 키워드키워드는 저번 강의때 간략히 설명을 했었는데, 더 정확히 말하자면 C 컴파일러가 특별한 의미로 인식하는 단어를 말합니다.다른 단어들과는 달리 특별한 기능을 수행하게 되죠.C언어 키워드는 다른 언어에 비해 적은 편 입니다.이유는 C언어 키워드에는 표준 입출력에 관한 키워드가 들어있지 않기 때문이죠.단지 데이터 처리와 프로그램의 흐름을 제어하는 키워드밖에 들어있지 않습니다. 그렇기 때문에 표준 입출력에 관한 것은 외부에 의존합니다.저번히 예제에 나온 printf라는 것도 키워드가 아닙니다.이것이 무엇인지는 오늘 배우게 됩니다. (2) 심볼심볼은..

C언어 문법 공부 2장 [C 프로그램의 구조]

2. C 프로그램의 구조 예제 소스를 하나 보며 공부하도록 하죠. /* 파일 이름 : C2-1.C프로그램 내용 : 계산에 대한 결과를 출력하는 프로그램 */#include int add(int,int); /* 두 수를 더하는 함수 */ void main(){int result; /* 변수 선언 */ result=add(3,5); /* add함수를 호출해 3과 5를 더한다. */printf("Result:%d\n",result); /* result의 값을 출력한다. */} int add(int a, int b){return(a+b); /* a와 b를 더해서 리턴 */} 이 프로그램은 아주 간단하지만 처음 하시는 분은 좀 복잡해 보일 겁니다.우선 저번 강좌 내용을 들춰 보면서 그때 나온 소스들과 이 소스를 ..

C언어 문법 공부 1장 [C 프로그램의 기본적인 구조]

4. C 프로그램의 기본적인 구조 이정도 알았으면 이제 C언어 프로그램의 문법적인 구조를 살펴보기로 합시다.이제부터 정말 C의 문법에 대한 공부를 들어갈탠데, 이번에 나올 C 프로그램은 기본적인 구조만 이해하시면 된검니다.세부적인 부분은 모르셔도 됩니다.기본적인 구조를 알고 계셔야 다음 강좌의 이해가 쉽기 때문이죠. (1) 자유로운 형식C언어는 다른 언어들과는 달리 형식이 메우 자유롭습니다.우선 예제 소스 하나를 보며 공부해보도록 하죠. /* 파일 이름 : C1-1.C프로그램 내용 : 화면에 메시지를 출력하는 프로그램. */#include void main(){printf("This is a first program.");} 이 소스는 아주 간단한 소스 입니다.하지만 C를 처음 대하시는 분 이라면 아주 ..

C언어 문법 공부 1장 [C언어에는 어떤 종류가있는가 ?]

2. C언어에는 어떤 종류가있는가 ? 'C언어에는 어떤 종류가..'라는 제목을 보고 글이 자꾸 읽고 싶어 지신다면 그 분은 분명 C언어 초보자 입니다. 하지만 이 제목을 보고선 무언가 이상하다고 느끼시면 진정한 전문가라고 할수 있죠.이유가 궁금하시죠? 이유는 C언어에는 종류가 없기 때문이죠.종류가 없는데 제목이 저러니 당연히 이상할수 밖에요.C를 처음 하시는 분들이 많이 질문하시는 것들 중 하나가 'C와 Visual C의 차이점이 무엇인가요?' 입니다.제가 이 질문을 받았다면 이렇게 답해 드리고 싶군요.'C는 언어이고 Visual C는 언어가 아닙니다.' 라구요. 여기서 Visual C라는 건 Microsoft라는 회사에서 만든 C언어로 프로그래밍 할때 필요한 도구를 말합니다.즉 언어가 아니라는 것이죠...

C언어 문법 공부 1장 [C언어는 어떻게 생성되는가]

3. C언어는 어떻게 생성되는가? 이제 C언어 프로그램이 어떻게 실행되어 지는 가를 알아봅시다.C언어로 프로그램을 만들면 실행파일(.EXE)을 만들 수가 있습니다.실행파일이 만들어지데는 다음과 같은 과정을 거칩니다. (텍스트 에디터) (선행처리기) (1)소스 코드 -------------> (2)소스 파일 ------------> (3)선행처리기 지시어가 번역된 소스 파일 (컴파일러,라이브러리) (링커) -------------------->(4)목적 파일 -----------> (5)실행파일 (1) 소스 코드 (Source)프로그램의 내용 자체를 소스 코드라고 합니다. (2) 소스 파일 (Source file)소스 코드를 택스트 파일에 기술하여 만들어진 파일을 소스 파일이라고 합니다. C언어의 소스 파..