그냥 게임개발자

출력 본문

C++ 나만의 복습

출력

sudoju 2024. 3. 31. 18:15

와 지금 생각해보니 다 아는 건데 맨날 유니티만 하다보니 C++을 까먹었구나 라고생각했는데 막상 다시 보니까 아!

이렇게 되버린다..

그래서 한꺼번에 포스트를 올리는 중인데 참..

미리미리 복습할걸

그래도 미래의 나를 생각해보자 얼마나 좋은가

 

너가 알아서해라. 미래의 나

 

 

암튼 출력에는 cout과 printf가 있다.

 

cout 

cout << 출력할 것 << "\n"해서 하는 게 일반적

아니면 endl(endline)을 써도 무방

cout << 출력할 것 << endl;

#include <stdio.h>

using namespace std;

int main()
{
    string a = "헤헤"
    string b = "여자친구 사귀고싶다"
    
    // 1.
    cout << a << '\n';
    cout << a << " " << "" << b << '\n';
    
    // 2.
    cout << a << endl;
    cout << a << " " << "" << b << endl;
    
    return 0;
}

/*
1.
헤헤
헤헤 여자친구 사귀고싶다


2.
헤헤
헤헤 여자친구 사귀고싶다
*/

 

cout의 실수 타입 출력

cout은 기본적으로 실수를 출력하게 되면 일부분만 출력이 된다.

실수 타입을 사용해 출력하고자 한다면 예를 들어 소수자리 6자리까지 반올림해서 출력한다고 가정해보면

다음 코드처럼 cout.precision(자릿수 + 1); 를 걸어 정해준다.

 

#incldue <stdio.h>

using namespace std;

typedef long long ll;

double a = 3.1415926535;

int main()
{
    cout << a << "\n";			// 3.14159
    cout.precision(7);			// 6자리까지 출력해야 하니 6+1
    cout << a << "\n";			// 3.141593
    return 0;
}

 

 

printf

printf는 형식을 지정해서 출력할 때 좋음

다음 코드처럼 형식(format)을 정한 후에 다음 매개변수로 변수를 넣으면 형식에 맞추어 출력이 된다.

int printf(const char* format, ...);

 

ex) 민수 1: 철수 2 이런 형식으로 출력하라고 하면 어떻게 해야 할까?

아래와 같다.

#include <stdio.h>
using namespace std;

int a = 1, b = 2;

int main()
{
    printf("민수 %d : 철수 %d\n", a, b);
    return 0;
}

 

#include <stdio.h>

using namespace std;

typedef long long ll;

double a = 1.23456789;
int b = 12;
int c = 2;
itn main()
{
    pritnf("%.6lf\n", a);			// 소수점 6자리까지
    pritnf("%02d\n", b);			// 2자리 출력 정수
    pritnf("%02d\n", c);			// 2자리 출력 정수
    return 0;
}
// 결과물
// 1.234568
// 12
// 02

 

 

scanf처럼 형식을 지정해서 출력

#include <stdio.h>
using namespace std;

int a = 1;
char s = 'a';
string str = "산토스";
double b = 1.234567;

int main()
{
    printf("난 천재 : %d\n", a);
    printf("난 천재 : %c\n", s);
    printf("난 천재 : %s\n", str.c_str());
    printf("난 천재 : %lf\n", d);
    
    return 0;
}

// 결과물
// 난 천재 : 1
// 난 천재 : a
// 난 천재 : 산토스
// 난 천재 : 1.234567

 

여기서 string을 출력할 때 c_str() 함수를 걸어서 출력하고 있다.

문자열을 printf로 출력할 때 주의할 점이다.

printf를 기반으로 문자열을 출려갛려면 string 문자열에 대한 포인터(char*)타입으로 바꾸어 주어야 한다.

(그래서 문자열은 cout을 사용하는 것이 좋다.)

'C++ 나만의 복습' 카테고리의 다른 글

string의 메서드  (0) 2024.03.31
타입? 타입변환?  (0) 2024.03.31
입력  (0) 2024.03.31
STL이란?  (1) 2024.03.31
define이란?  (0) 2024.03.31