ASCII

[1] C/C++ (입력과) 출력 본문

Language/C,C++

[1] C/C++ (입력과) 출력

규바보 2018. 2. 21. 23:28

입력과 출력의 당연하고 간단한 정의는 아니지만 쉽게 생각하여 볼 때,

이 두 단어는 정보의 이동 방향을 나타내는 말입니다.


"입력"은 "사람"이 어떠한 정보를 "컴퓨터"에게 전달하는 과정을 의미하고,

"출력"은 "컴퓨터"가 어떠한 정보를 "사람"에게 전달하는 과정을 의미합니다.


우선 설명할 내용은 출력입니다.

<C>


#include <stdio.h>


int main()

{

pritnf("Hello, World.\");

return 0;

}

Hello, World

계속하려면 아무 키나 누르세요.


#include <stdio.h>


-"printf" 라는 함수를 이용하기 위해 추가해줍니다.

프로그래밍 코드는 다양한 함수들이 모여서 이루어진다고 해도 과언이 아닙니다.

결론적으로 말해서, 이 부분은 printf라는 함수가 있는 "stdio.h"라는 이름의 파일을 우리가 프로그래밍을 하면서 이용하겠다는 뜻입니다. 


만약 이 부분을 지운채 실행하게 된다면 에러가 발생하게 됩니다.

에러인 즉슨 "printf 함수가 무엇인가요?"라고 컴퓨터가 물어봅니다.



int main(){...}

-우리가  프로그래밍한 코드의 "main" 가장 중요한 핵심 부분입니다.

프로그래밍한 코드를 실행시키면, main함수의 중괄호 안에 있는 부분이 실행 되는 것입니다.


printf("Hello, World.\n");

-print "출력"해라 format "서식"을 따라서, 라는 말을 줄인 printf입니다. 

중앙에 "<내용>" 따옴표 안에 문자열이나 특수기호를 이용한 다양한 특수 명령을 내립니다.


<C++>

#include <iostream>


int main()

{

std::cout<<"Hello, World"<<std::endl;


return 0;

}

Hello, World

계속하려면 아무 키나 누르세요.


C++과 C의 코드가 상당 부분 비슷하기 떄문에 다른 점만 간단하게 설명하겠습니다.


#include <iostream>

-"윗 부분을 보아 std::cout라는 함수를 이용하기 위해서 iostream파일을 추가한거구나, 그런데 왜 iostream.h가 아니지?"


C++에서는 C에 비해서 조금 더 많은 기능과 코드를 간략하게 표현하고 있는 부분이 많습니다.

그렇기에 기존에 <~~.h>라고 표현하던 부분을 <~~>로 표현하고

C와의 호환성을 위해서 C에서 사용되는 <~~.h>파일들을 <c~~>로 표현하고 있습니다.


std::cout<<"Hello, World"<<std::endl;

-C++에서는 동일하지만 다른 기능의 함수를 구별해주기 위해서 namespace라는 기능이 있고,

std가 바로 그 namespace 입니다.


namespace는 간단하게 폴더라고 생각하시면 됩니다.



다음과 같이 std라는 폴더 안에 cout 함수가 있고, 이를 실행시켜 주는 것입니다.[각주:1]


-cout는 Console은 윈도우에 있는 명령 프롬프트(Console 창)에 out(출력)시켜라 라는 뜻을 가지고 있으며,

각각의 문자열이나 숫자 특수기호를 이용한 특수 명령을 "<<"을 이용하여 구분해 줍니다.


-endl은 end(끝) line(줄의)라는 뜻으로 줄의 끝을 알려주며 줄을 한줄 내려주는 부분입니다.




이로써, C/C++에서의 출력 부분에 대해서 세밀한듯 간단하고 복잡하게 알아보았습니다.

  1. (여기서는 \를 사용하고 있고, 프로그래밍 코드에서는 ::을 사용하고 있습니다.) [본문으로]

'Language > C,C++' 카테고리의 다른 글

[C] gcc로 전처리하기  (0) 2024.07.13
[h1] 절대값 소수 반올림 하기(C/C++)  (0) 2017.09.02
Comments