안녕하세요, 흡혈귀 입니다.


    이번은 두번째 장입니다. 주제는 printf함수의 문자열 출력이 되겠습니다.


    간단하게 printf함수의 구성요소를 다음의 사진으로 보시겠습니다.




    개발환경은 Dev C++을 기반으로 해나갈 예정입니다. Visual Studio로 하시는분은

    system("pause"); 부분을 입력하지 않으셔도 됩니다.


    현재로는 오타로 인해 컴파일 오류가 나면 찾아내시는데 시간을 많이 허비하실수 있으니

    최대한 오타를 내지않는 쪽으로 느리시더라도 천천히 입력하시길 바랍니다.





    사진에서도 보셨듯이 printf함수의 구성요소는 이렇게 됩니다.


    printf("출력할 문자열");


    파란색 부분은 printf함수의 기본구성, 빨간색 부분은 출력할 문자열(띄어쓰기 포함)

    색 지정이 되지 않은 부분은 해당 열을 끝맽는 표시 세미콜론 (;)


    Hello World를 출력 하시려면 printf("Hello World"); 이렇게 되는것이고 여기에서

    띄어쓰기는 그대로 문자열로 인식하므로 띄어쓰기까지 출력이 됩니다.





    컴파일 하셔서 실행하시면 이런 결과물이 나옵니다.




    축하드립니다! 첫번째 결과물을 얻으셨습니다! 경험치*(?)





    바로 다음 들어 가겠습니다.


    방금 얻은 결과물은 다음과 같습니다.


    "Programming Professional!계속하려면 아무 키나 누르십시오 . . ."


    하지만. 이거 뭔가 이상합니다. 분명 우리는 "계속하려면..."은 입력한 적이 없는것 같은데 이거뭐(?)


    Dev C++의 경우는 system("pause");를 입력해서 생긴 문장이라고 한다면 편합니다.

    반면 Visual Studio로 하신분은 system("pause")를 입력하지 않으셨지만, 자동설정 됩니다.


    Dev C++ 사용자 분들께서는 system("pause");를 소스상에 입력해 주지 않으시면

    결과물로 나오는 검은 창이 바로 사라져 버려서 결과 확인이 불가능해요. 그래서 넣어주는 거죠.


    말이 잠깐 옆구리로 샜습니다, 계속 진행 합니다.





    "Programming Professional!계속하려면 아무 키나 누르십시오 . . ."


    사람마다 각각 다를수 있지만, 대부분이 이러한 생각을 하실것 같습니다.


    "내가 출력을 요청한 문자열하고, 계속하려면...이 같은 줄에 출력이 되어버리니까

    너무 복잡해서 구분이 안가네!"


    그렇게 생각하지 않으신분이 "계시겠지만" 계속 진행합니다..ㅎㅎ


    그렇다면 계속하려면...을 다음줄로 넘겨버리겠습니다!





    Escape Sequense를 사용하면 간단하게 개행이 가능하지만 이걸 다 알긴 아직 힘드니까요..

    그중 지금당장 필요한 하나를 보겠습니다..


    개행을 해주는 기능을 가진 "\n" 입니다.


    Escape Sequense는 printf함수의 문자열 출력 부분에 넣어 사용 할수 있습니다.





    예는 다음과 같습니다.




    처음에 보여드린 그림에서 "아주 약간"만 바꿔 봤습니다.


    printf("Programming Professional! \n"); 이렇게 되어 있네요.

    자세히 보시면 "\n"이 포함 되어 있습니다!

    (띄어쓰기는 보기 편하기 위하여 넣은 것입니다.

    띄어쓰기가 없어도 정상적으로 컴파일이 되고 실행도 됩니다.)





    해당 소스를 컴파일 해보면 다음과 같은 결과를 얻게 됩니다.





    성공적으로 개행을 하여 계속하려면...을 다음행으로 보내버렸습니다!


    물론 응용한다면 두개의 행 밑으로도, 세개의 행 밑으로도 보내버릴수 있겠죠?





    그리하여 오늘 "printf"함수와 개행 역할을 하는 "\n"을 배웠습니다!


    "배웠다면 복습을해야 머릿속에 남습니다. 복습을 하지 않아 오늘 배운 내용을 잊어버린다면

    당신은, 시간을 허비 한 것입니다. 꼭 한번에 머릿속에 넣어야 하는법은 없으며, 그렇다 한들

    결국은, 노력하는 자 에게 지는 법입니다."

    Posted by 비오는 밤 레드와인과