printf와 scanf에 관한 짤막한 글
prinft와 scanf. C에서 출력과 입력을 담당하는 명령어입니다.
예전부터 C 코드를 볼 때마다 꽤나 복잡한 구조로 이뤄졌다고 생각했던 부분인데요.
C++에서는 간단히 cout과 cin으로 표현할 수 있는 것을 서식을 사용해서 머리 아프게 만드는군요.
====================================[ 간단한 예 ]==========================================
//C++
int num1, num2, sum; //변수 선언
cout << "enter the value of num1: "; //num1에 숫자 넣으라고 압박 시작
cin >> num1; //입력 받은 숫자 강탈
cout << "enter the value of num2: "; //num1에 숫자 넣으라고 압박 시작
cin >> num2; //입력 받은 숫자 강탈
sum = num1+num2; //강탈한 숫자 둘 더하기
cout << num1 << " + " << num2 << " = " << sum << endl; // 'num1+num2=결과'로 출력
//C
int num1, num2, sum; //변수 선언
printf("enter the value of num1: "); //num1에 숫자 넣으라고 압박 시작
scanf("%d", &num1); //입력 받은 숫자 강탈
printf("enter the value of num2: "); //num1에 숫자 넣으라고 압박 시작
scanf("%d", &num2); //입력 받은 숫자 강탈
sum = num1+num2; //강탈한 숫자 둘 더하기
printf("%d + %d = %d\n", num1, num2, sum); // 'num1+num2=결과'로 출력
==========================================================================================
대충 뭐 이런 차이..
둘 다 나름대로의 장점이 있지만 표현의 단순화는 C++ 쪽이 더 효율적이지 않나 싶습니다.
근데 어차피 둘 다 콘솔용 입출력 방식이라 GUI 시대인 요즘엔 오십보 백보인 방법이네요 ㅎㅎ
그래도 일단은 알아둬야 다른 분들의 소스를 보고 대충이나마 이해하는 척이라도 할 수 있을것 같아
아래의 표를 올립니다.