C++ 1. 입출력 및 기본 문법과 관련된 예제
- C++/설명
- 2016. 4. 19. 20:59
//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; //a와r의 주소는 같다.
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;
}
'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 |
이 글을 공유하기