C++ 1. 입출력 및 기본 문법과 관련된 예제

//string 형식 개요

#include <iostream>

#include <string>

using namespace std;

 

int main(void)

{

     string s = "hello";

     string s2 = "hello";

     string s3;

 

     if(s == s2)

     {

           cout<<"서로 같아요"<<endl;

     }

     else

     {

           cout<<"서고 달라요."<<endl;

     }

 

     s3 = s;

     cout<<"s3 is"<<endl;

 

     return 0;

}

 

 

//논리 형식 bool 사용

#include <iostream>

using namespace std;

 

bool IsEvenNumber(int num);

 

void main()

{

     bool check = false;

     int num = 0;

 

     cout<<"아무 수나 입력하시요."<<endl;

     cin>>num;

 

     check = IsEvenNumber(num);

 

     if(check)

     {

           cout<<num<<"() 짝수입니다."<<endl;

     }

     else

     {

           cout<<num<<"() 홀수입니다."<<endl;

     }

}

 

bool IsEvenNumber(int  num)

{

     return (num % 2 ) == 0;

}

 

 

//디폴트 매개변수

#include <iostream>

using namespace std;

 

double CalculateArea(double radius, double radian = 2 * 3.14)

{

     return radius * radius *(radian / 2);

}

 

int main(void)

{

     cout<<"반지름이 3 원의 넓이:";

     cout<<CalculateArea(3)<<endl;

     cout<<"반지름이 3 반원의 넓이:";

     cout<<CalculateArea(3,3.14)<<endl;

 

     return 0;

}

 

 

//참조 변수

#include <iostream>

using namespace std;

 

int main(void)

{

     int a = 0;

 

     //int &r; 참조 변수는 선언과 동시에 초기화를 반드시 해야한다.

 

     //int &r = 9; 참조 변수에 초기화 표현은 l-value여야 합니다.(상수가 아니어야 한다.)

 

     int &r = a;

     int *p1 = &a;

     int *p2 = &r;

 

     cout<<p1<<","<<p2<<endl; //ar 주소는 같다.

 

     r = 9;

     cout<<a<<","<<r<<endl;

 

     return 0;

}

 

 

 

 

//레퍼런스 사용 주의사항

#include <iostream>

using namespace std;

 

int &GetSum(int s, int e) //반환형식이 int &형식

{

     int sum = 0;

     for(  ; s <= e; ++s)

     {

           sum += s;

     }

     return sum; //반환형식을 반환할때는 지역변수로 반환하지 마라!!!

}

 

int main(void)

{

     int &r = GetSum(1,100);

     int &r2 = GetSum(2,100);

 

     cout<<r<<endl;

     cout<<r2<<endl;

 

     return 0;

}

 

 

 

 

 

//Program.cpp

#include <iostream>

using namespace std;

 

int CalculateArea(int width, int height)

{

     return width * height;

}

 

int CalculateArea(int width, int height, bool) //세번째 인자를 스텁 매개 변수로 결정

{

     return width * height / 2;

}

 

int main(void)

{

     cout<<"사각형 넓이 :";

     cout<<CalculateArea(3,4)<<endl;

     cout<<"삼각형 넓이 :";

     cout<<CalculateArea(3,4,false)<<endl; //스텁 매개 변수에 인자를 전달

 

     return 0;

}

 

 

//신뢰성 강화

#include <iostream>

using namespace std;

 

enum Subject

{

     KOREAN,ENGLISH,MATH,MAX_SUBJECT

};

 

enum ScoreConst

{

     DEF_SCORE = -1, MIN_SCORE = 0, MAX_SCORE = 100

};

 

int main(void)

{

     //정수 형식힐 곳에 열거형을 사용하는 예제 코드

     const char *titles[MAX_SUBJECT] = {"국어","영어","수학"};

     int scores[MAX_SUBJECT] = {DEF_SCORE, DEF_SCORE, DEF_SCORE};

 

     scores[KOREAN] = 90;

     scores[ENGLISH] = MAX_SCORE;

     scores[MATH] = MIN_SCORE;

 

     for(int si = 0; si < MAX_SUBJECT; si++)

     {

           cout<<titles[si]<<":"<<scores[si]<<endl;

     }

 

     return 0;

}

 

 

 

//이름 공간

#include <iostream>

using namespace std;

//업체 A Library

namespace ALib

{

struct Stack

{

     int buf[100];

     int top;

};

struct Queue

{

     int buf[100];

     int front;

     int rear;

};

}

//업체 B Library

namespace BLib

{

struct Stack

{

     int base[100];

     int top;

};

struct Queue

{

     int base[100];

     int front;

     int rear;

};

}

 

//using namespace ALib;

//using namespace BLib;

 

using ALib::Stack;

using BLib::Queue;

 

 

int main(void)

{

     Stack s;

     s.buf[0] = 9;

     //ALib::Stack s;

     //s.buf[0] = 9;

 

     BLib::Stack s2;

     s2.base[0] = 9;

 

     ALib::Queue q;

     q.buf[0] = 9;

 

     Queue q2;

     q2.base[0] = 10;

 

     return 0;

}

 

 

 

// 입출력

#include <iostream>

using namespace std; //std 네임 스페이스를 사용

 

void TestCout();

void TestCin();

 

int main(void)

{

     TestCout();

     TestCin();

}

 

void TestCout()

{

     int num = 23;

     const char *name = "홍길동";

     cout<<"이름 : "<<name<<"번호 :"<<num<<endl;

}

 

void TestCin()

{

     int num;

     char name[256];

 

     cout<<"번호:";

     cin>>num;

     cout<<"이름:";

     cin>>name;

 

     cout<<"입력하신 번호는"<<num<<"이름은"<<name<<"입니다."<<endl;

}

 

 

 

//참조 변수를 이용한 Swap

#include <iostream>

using namespace std;

 

void Swap(int &r1, int &r2)

{

     int temp = r1;

     r1 = r2;

     r2 = temp;

}

 

int main(void)

{

     int a = 2, b = 3;

     Swap(a,b);

     cout<<a<<","<<b<<endl;

     return 0;

}

 

 

 

 

//태그명을 형식명으로

 

#include <iostream>

using namespace std;

 

enum Gender

{

     FEMALE,

     MALE

};

 

struct StuInfo

{

     int num;

     char name[20];

};

 

int main()

{

     Gender g = MALE; //태그명인 Gender 형식 명으로 사용

     StuInfo si = {2,"홍길동"};//태그 명인 StuInfo 형식 명으로 사용

 

     cout<<"성별(0-여성, 1-남성):"<<g<<endl;

     cout<<"학생 번호:"<<si.num<<"이름 :"<<si.name<<endl;

}

 

728x90

'C++ > 설명' 카테고리의 다른 글

C++ 6.접근 지정자  (0) 2016.04.19
C++ 5.정적 클래스  (0) 2016.04.19
C++ 4.정적멤버 static  (0) 2016.04.19
C++ 3. 특별한 멤버 this  (0) 2016.04.19
C++ 2.캡슐화  (0) 2016.04.19

이 글을 공유하기

댓글

Designed by JB FACTORY