2.2. 윈도우용 볼랜드C++로 짜보는 첫 번째 프로그램 hello.c
2.2.1.윈98에서 bcw.exe를 실행하고 hello.c 파일 불러오기
bcw.exe로 컴파일하면 도스용 소스파일도 윈도용 프로그램으로 만들어줍니다.
도스용 볼랜드C++ 대신 윈도우용 볼랜드C++인 bcw.exe를 이용해서 짜는 과정도 기본적으로는 도스용 볼랜드C++ 프로그램인 bc.exe와 같습니다. 다만 화면이 그래픽 환경으로 바뀌었기 때문에 메뉴의 형태가 조금 바뀌었을 뿐입니다.
윈도우용 볼랜드C++가 도스용 볼랜드C++과 가장 크게 차이가 나는 점은 또 같은 소스파일로 컴파일을 하더라도 윈도우용 프로그램으로 만들어준다는 점입니다.
윈도우용 볼랜드C++에서 컴파일해서 만들어진 실행프로그램은 도스용이 아닙니다. 따라서 도스에서는 실행이 되지 않습니다. 윈95/98의 탐색기나 내 컴퓨터 등을 이용해서 실행시켜야 합니다. 그리고 윈95/98의 도스창에서 실행시킨다고 해도 자동으로 윈95/98용으로 실행되기 때문에 윈95/98 화면으로 돌아갑니다. 이 점이 도스용과 다른 점입니다.
이 책은 C++언어 문법책입니다. 따라서 도스용 볼랜드C를 사용하건 윈도우용 볼랜드C++를 사용하건 소스파일의 내용이 같습니다. 다만 컴파일러만 다를 뿐입니다. 때문에 앞으로 이 책에서 설명하는 소스파일에 대한 설명은 컴파일러 상관 없이 모든 프로그램에 공통적으로 적용됩니다.
다만 앞으로 이 책에서 보여주는 화면은 가능한 윈도우용 볼랜드C++인 BCW로 만든 윈도우용 실행파일의 화면을 주로 사용합니다.
일단 윈도우용 볼랜드C++의 컴파일 방법도 hello.c를 이용해서 설명하도록 하겠습니다. 컴파일러의 컴파일하는 방법은 한 번만 자세하게 설명하고 다음부터는 소스파일의 문법적인 내용에 대해서만 설명하도록 하겠습니다.
볼랜드C++의 설치를 이 책에서 설명한대로 끝내셨다면 윈도우용 볼랜드C++은 C:\BORLANDC라는 디렉토리에 설치되었을 겁니다. 윈도우용 볼랜드C++의 실행 프로그램은 bcw.exe입니다. 이 프로그램은 윈도3.1은 물론 윈95와 윈98에서도 잘 돌아갑니다. 또한 이 컴파일러로 컴파일한 실행파일 역시 윈3.1/윈95/윈98에서 잘 돌아갑니다.
먼저 윈도우용 볼랜드C++ 프로그램인 bcw.exe를 실행시킵니다. 역시 빈 화면이 나타나거나 지난번에 마지막으로 사용했던 소스파일이 나타날겁니다.
^^^그림: bcw.exe를 처음 실행시키면 빈 화면이 나타납니다.
소스파일을 불러오려면 Open 메뉴를 선택합니다.
도스용 볼랜드C++에서 불러와 사용하던 hello.c를 윈도우용 볼랜드C++에서도 그대로 사용하도록 하겠습니다. 이 책에서 설명한대로 Output Directory를 'C:\BORLANDC\CWIN'으로 설정했다면 실행파일은 'C:\BORLANDC\CWIN'에 만들어집니다.
윈도우용 볼랜드C++에서 파일불러오기 메뉴를 선택하려면 마우스로 File 메뉴를 선택하고 Open을 선택합니다.
또는 [Alt]+[F]를 누르고 영문 O를 누르거나, [Alt]+[F]를 누르고 화살표를 이용해 Open 메뉴에 커서를 올려놓고 [Enter]를 치는 방법, [F10]을 누르고 화살표키를 이용하여 File 메뉴의 Open을 선택하는 방법을 사용할 수 있습니다.
마우스를 이용하는 점만 제외하면 도스용 볼랜드C++과 비슷합니다.
^^^그림: Open 메뉴가 소스파일을 불러오는 메뉴입니다.
그러면 불러올 파일이름을 적는 칸이 나옵니다. 보통 *.CPP라는 초기값을 가지고 있을 겁니다. 이것을 *.C로 바꾸어주어야 합니다. File Name메뉴에 *.CPP라고 적혀있다면 마우스를 File Name 오른쪽의 입력칸에 놓고 *.C로 바꾸어줍니다.
^^^그림: 소스파일의 초기 확장자는 *.cpp로 되어있습니다.
*.c로 확장자를 바꾸면 다음번 프로그램 실행 때부터 *.c가 기본 확장자로 나옵니다.
File Name메뉴에 *.CPP라고 적혀있다면 마우스를 File Name 오른쪽의 입력칸에 놓고 *.C로 바꾸어줍니다. 다음에 다시 볼랜드C++을 실행하면 확장자가 *.C로 나타납니다. 이제 hello.c가 있는 곳으로 이동해야 합니다.
^^^그림: 확장자를 *.c로 바꾸어줍니다.
가운데의 Directories 창에 기본적으로 wbc.exe를 실행한 'C:\BORLANDC\BIN' 디렉토리가 선택되어 있습니다. 여기에서 '[..]'을 마우스로 더블클릭하면 상위 디렉토리로 이동합니다. 그러면 한 단계 위인 'C:\BORLANDC\'로 이동했음을 화면을 통해 알 수 있습니다.
^^^그림: 상위 디렉토리로 이동합니다.
이제 마우스를 이용하여 EXAMPLES\라는 디렉토리를 선택합니다.
^^^그림: EXAMPLES 디렉토리를 선택합니다.
EXAMPLES 디렉토리의 hello.c 파일을 예제파일로 불러옵니다.
EXAMPLES 디렉토리를 선택했으면 [Enter]를 쳐서 EXAMPLES 디렉토리 안으로 들어갑니다. 왼쪽의 Files 창을 보면 hello.c가 보입니다. 이 파일을 선택하면 위의 File Name 창 오른쪽 입력칸에 hello.c가 입력됩니다.
^^^그림: hello.c 파일을 선택합니다.
커서를 hello.c 위에 가져다놓고 더블클릭을 하거나 hello.c를 선택한 상태에서 오른쪽 메뉴창에서 OK 아이콘을 마우스로 누르면 hello.c라는 파일을 작업화면으로 불러옵니다. 소스파일은 도스용에서 사용한 것과 같습니다.
^^^그림: hello.c를 불러왔습니다
2.2.2.hello.c 파일을 hello.exe 파일로 만들기
hello.c 파일을 컴파일합니다.
이제 hello.c 파일을 컴파일해야 합니다. 마우스로 메뉴막대의 Compile 메뉴를 선택하고 Compile 메뉴를 선택합니다. 또는 [Alt]+[F9]를 눌러서 컴파일해도 됩니다.
^^^그림: 윈도용 볼랜드C++도 컴파일 메뉴 지름글쇠는 [Alt]+[F9]입니다.
Compile 메뉴를 선택하고 [Enter]를 누르면 화면 가운데에 Compile Status창이 나타납니다. 컴파일을 하는 동안 컴파일창에는 컴파일 과정의 진행상황이 나타납니다. 그러나 hello.c는 워낙 순식간에 진행되기 때문에 컴파일 과정을 눈으로 따라갈 수는 없습니다. 컴파일이 끝나면 성공적으로 작업이 끝났다는 안내문이 뜹니다. 마우스로 OK 아이콘을 누르면 다시 작업화면으로 돌아갑니다.
^^^그림: 컴파일이 끝났다는 안내문
컴파일한 파일을 링크시켜야 합니다.
다시 작업화면으로 나오면 이제 링크를 해야 합니다. 마우스를 이용해 Compile 메뉴에서 Link 메뉴를 선택해 링크를 시작합니다. 또는 화살표키를 이용해서 Link 메뉴를 선택해도 됩니다.
^^^그림: Link 메뉴 화면
링크가 끝나면 다음과 같은 안내문이 나옵니다. 안내문을 잘 보시면 Warnings에 1이라는 숫자가 표시되어 있습니다. 다시 말해서 링크 과정에 경고가 하나 발생한 것입니다. 그러나 프로그램의 실해에는 문제가 없습니다. 'OK' 아이콘을 눌러서 끝냅니다.
^^^그림: 링크가 끝났다는 안내문
[F9]를 누르거나 Make 메뉴를 선택하면 컴파일과 링크를 한 번에 처리합니다.
컴파일과 링크까지 하나의 과정으로 처리하려면 Make 메뉴를 이용하면 됩니다. 마우스를 이용해 Compile 메뉴에서 Make를 선택하거나 [F9]를 눌러서 링크를 시작합니다. 또는 화살표키를 이용해서 Make 메뉴를 선택해도 됩니다.
^^^그림: Make 메뉴를 선택하면 컴파일과 링크까지 한 번에 처리합니다.
'Make' 메뉴를 선택하고 [Enter]를 누르면 링킹이 시작되고 잠시 후에 다시 링킹이 끝납니다. 역시 Compile Status창이 나타나 진행상황을 표시해줍니다. Make 작업이 끝나면 hello.exe가 만들어졌다는 안내문이 뜹니다. 마우스로 OK 아이콘을 누르면 다시 작업화면으로 돌아갑니다.
Run 메뉴를 선택하면 컴파일부터 실행까지 한 번에 처리해줍니다.
컴파일부터 링크, 실행을 한꺼번에 하시고 싶은 분은 마우스로 Run 메뉴를 선택하고 다시 밑에 있는 Run 메뉴를 선택합니다. 또는 [F10]을 누른 뒤에 Run 메뉴를 선택하고 밑에 있는 Run 메뉴를 선택해도 되고, [Ctrl]+[F9]를 눌러도 됩니다. 가장 편한 방법은 역시 [Ctrl]+[F9]를 누르는 방법이거나 마우스로 Run-Run 메뉴를 선택 실행시키는 것입니다.
또는 [Alt]+ [R]을 누르면 메뉴표 중에서 Run이라는 메뉴표로 들어가서 다시 Run을 택하거나 Run에서 [Enter]를 쳐도 됩니다.
^^^그림: Run 메뉴를 선택하거나 [Ctrl]+[F9]를 누르면 실행까지 한 번에
처리합니다.
[Ctrl]+[F9]를 누르거나 Run 메뉴를 선택해서 실행파일을 만들 경우 도스용 컴파일러는 이때 실행된 내용을 바로 확인할 수 없어서 [Alt]+[F5]를 눌러야 했습니다. 그러나 윈도우용 볼랜드C++에서는 hello.exe가 실행된 창이 하나 더 뜹니다.
따라서 도스용처럼 제대로 프로그램이 만들어졌는지 확인할 필요 없습니다. 바로 만들어진 프로그램의 실행창이 뜨기 때문입니다.
도스에서는 프로그램이 실행된 다음에 자동적으로 도스로 돌아가지만 윈도95/98에서는 창이 자동으로 닫히지 않습니다. 따라서 실행된 프로그램을 닫으려면 창닫기 아이콘을 눌러서 사용자가 직접 닫아주어야 합니다.
^^^그림: hello.exe가 만들어져 실행된 상태입니다.
**요약: [Ctrl]+[F9]를 누르면 소스파일을 컴파일하고 링크한 뒤에 실행까지 해볼 수 있습니다. 이때 도스용과는 달리 새로 만들어진 실행파일이 하나의 독립된 윈도 창으로 뜨면서 실행됩니다.
2.2.3.에러나 경고가 발생했을 때 나타나는 창
hello.c를 컴파일하고 링크시키면 도스용에서는 나타나지 않았던 경고문구가 나타납니다. 모듈이 정의되지 않았다는 경고문구가 나타납니다. 경고문구는 하단에 별도의 창이 뜨면서 표시됩니다.
앞으로 프로그램을 만들다보면 에러가 경고(Warning)를 자주 접하게 됩니다. 경고는 작은 실수로 깜박한 내용이 있을 때 나타납니다. 경고는 프로그램의 실행에는 지장을 주지 않습니다. 그러나 에러(Error)는 프로그램의 실행에 지장을 줍니다. 다시 말해 에러가 있는 소스파일은 실행파일로 만들어지지 않습니다.
^^^그림: BCW에서 컴파일 때 나오는 경고문 창
윈도용 볼랜드C++에서 경고가 나오는 이유는 링커에 포함되는 파일의 설정이 잘못되었기 때문입니다. '볼랜드 C++ 3.1'을 설치하고 아무런 환경설정 변화를 주지 않았다면 링크할 때 계속하여 경고메시지가 나타납니다. 그러나 프로그램을 만드는데는 아무런 지장이 없습니다. 하여간 볼랜드C++의 화면에 위와 같은 경고문구가 나오더라도 개의치 말고 계속 다음 공부로 넘어가시기 바랍니다.
에러나 경고 안내 창이 떴을 때 화면이 너무 작다고 생각하면 보기 편하게 창의 크기와 위치, 배열순서를 조절하면 됩니다. 볼랜드C++의 창을 조절하는 메뉴는 메뉴막대에 있는 'Window' 메뉴입니다. 이곳을 선택하면 Cascade와 Tile의 두 가지 창 배열방법이 나옵니다.
^^^그림: Window 메뉴가 창의 배열방법을 선택하는 메뉴입니다.
Cascade는 창을 계단식으로 겹쳐서 배열하는 방법으로 두 개 이상의 창이 있을 때 다른 창에 의해서 나머지 창이 가려집니다. 창이 많을 경우 겹쳐서 나옵니다. 계단식 배열의 장점은 현재 사용중인 창을 넓게 쓸 수 있다는 점입니다. 대신 가려진 창의 내용을 볼 수 없는 점이 단점입니다.
^^^그림: Cascade(계단식) 창 배열방식은 현재 사용중인 창을 넓게 쓸 수 있습니다.
반면 Tile는 화면을 분할해서 같은 넓이로 보여주는 배열방법입니다. 창이 2개면 화면을 2등분해서 보여주고 8개면 8등분해서 각각의 창을 모두 조그만 크기라도 보여줍니다.
타일식의 장점은 모든 창을 동시에 보면서 작업할 수 있기 때문에 각 창을 비교하기 편하고 원하는 창을 쉽게 선택할 수 있다는 점입니다. 단점은 화면이 너무 작아서 작업에는 불편하다는 점입니다.
^^^그림: Tile 방식으로 창을 배열하면 모든 창을 같은 크기로 보여줍니다.
2.2.4.hello.exe 파일을 찾아서 실행해보기
탐색기나 '내 컴퓨터'를 이용해 hello.exe를 실행시켜봅니다.
그럼 실제로 만들어진 프로그램을 윈도우에서 실행시켜보도록 하겠습니다. 윈95/98에서 프로그램을 실행시키는 방법은 크게 네 가지 입니다. 탐색기를 이용하는 방법, 내컴퓨터를 이용하는 방법, 시작의 실행에 경로를 입력하는 방법, 바탕화면 등에 깔린 아이콘을 누르는 방법입니다. 이중에서 가장 기본이 되는 것은 역시 탐색기를 이용하는 방법입니다.
탐색기를 실행시킵니다. 탐색기의 왼쪽 창에서 C: 드라이브를 선택하고 Borlandc 폴더를 선택합니다.
^^^그림: BORLANDC 폴더를 선택합니다.
만약 볼랜드C를 설치할 때 환경설정에서 아무 것도 건드리지 않았다면 윈도우용으로 만들어진 hello.exe는 bin 디렉토리에 만들어졌 겁니다. 그러나 앞서 이 책에서 볼랜드C의 환경설정 과정을 설명하면서 실행파일이 만들어지는 디렉토리를 C:\BORLANDC\CWIN으로 설정하고 CWIN이라는 디렉토리도 만들었습니다. 이곳으로 이동해야 합니다. BORLANDC 폴더 밑의 CWIN 폴더를 선택합니다. 그러면 오른쪽의 파일목록창에 hello.exe가 표시될겁니다.
^^^그림: CWIN 폴더에 hello.exe가 생겼습니다.
이제 hello.exe 파일을 실행시켜보시기 바랍니다. hello.exe를 더블클릭하여 실행시킵니다.
^^^그림: hello.exe를 더블클릭해 실행시킵니다.
탐색기 위로 hello.exe가 실행된 프로그램 창이 하나 더 나타날겁니다.
^^^그림: hello.exe 프로그램이 실행된 화면
이렇게 해서 성공적으로 윈도우용 프로그램을 만들었습니다. 확인이 끝났으면 창닫기 아이콘을 눌러 창을 닫습니다.
이제부터 여러분은 윈도우용 프로그램도 만들 수 있습니다. 윈도우용 프로그램를 만드는 일이 그렇게 어려운 일이 아니라는 것을 알 수 있습니다. 도스용과 윈도우용 프로그램을 함께 만들어가면 하나하나씩 C++언어를 익혀가도록 하겠습니다.
**요약: 윈95/98용 볼랜드C++에서 hello.c라는 소스파일을 컴파일하고 링크시키면 hello.exe라는 윈도용 실행파일이 만들어집니다.