Language/C++

[C++] 기본구성요소와 문자열

Return 2022. 6. 5. 10:12

C++ 코드의 주요 요소

#include <iostream>

int main(){
    std::cout << "Hello\n";
    std::cout << "frist simple code";
    return 0;
}

iostream 

 C++ 소스파일을 컴파일 하기 전 <iostream>헤더를 먼저 읽어 C++ 소스파일에 삽입합니다. <iostream>에는 C++ 표준 입출력을 위한 클래스와 객체가 선언되어 있어 키보드 입력, 화면 출력등을 위해 필요하다.

<iostream> : [cout 객체와 <<연산자 함수가 선언된 헤더파일]

main()의 return type 

 프로그램의 main()함수에서 리턴한 정수 값을 알아내는 함수를 통해 자식 프로그램의 종료 상태를 알 수 있다.

std::

 표준 이름공간. std이름 공간에 선언된 수많은 이름에 대해 사용할 때마다 접두어 std::를 붙이는 것은 번거롭기에, using 지시어를 이용해 생략할 수 있다. 

#include <iostream>
using namespace std; 

int main(){
    cout << "Hello\n";
    cout << "frist simple code";
    return 0;
}

 

C++ 문자열 입력 

C-string 방법 

 <cstring>헤더 파일 선언 필요 

char name[] = "Grace";

 cin 방법 

int main(){
    char password[11];
    cout << "input your password" << endl;
    while(true){
        cout << "passwaord : ";
        cin >> password;
        if(strcmp(password,"c++")==0){
            cout << "correct password";
            break;
        }
        else
            cout << "wrong password" << endl;
    }
}

[단점] : >> 연산자는 공백문자를 만나면 그 전까지 입력된 문자들을 하나의 문자열로 인식한다.(C의 scanf와 비슷) 그래서 cin.getline()을 이용해 공백이 포함된 문자열을 입력받는다. 

int main(){
    cout << "input your address";

    char address[100];
    cin.getline(address,100);
    cout << "address :" << address;
}

string 클래스 [권장]

 C++ 표준 라이브러리에서 제공하는 string 클래스를 사용하는 방법, <string>헤더 선언 필요.

#include <string>

int main(){
    string song("Falling in love with you");
    string elvis("Elvis Presley");

    string singer;

    cout << song + "singer name :";
    cout << "HINT : " << elvis[0];

    getline(cin,singer);
    if(singer == elvis){
        cout << "Correct!!";
    }
    else {
        cout << "Wrong!!";
    }
}