C Language/C++

[C++] 1. C++ 기초 및 std 기본 사용법

Auzii 2023. 3. 9. 08:17
300x250

1. 데이터 타입

  •  변수 선언

char [1바이트] / int [4바이트] / float [8바이트] / bool

 

  • 레퍼런스 인자 (&)
int num;

 

위와 같이 선언된 것을 다른 이름으로 사용하는 방법으로 다음과 같이 사용

int &ref = num;

 

예제로는

struct Lab
{
	double student_num;
{

struct Skku
{
	struct Lab amlab;
{

int main(void){
	struct Skku skku_uni;
	skku_uni.amlab.student_num = 15;
}

 

위를 아래와 같이 사용 가능 

double &lab_stud_num = skku_uni.amlab.student_num;

 

C에서는 Call By Value 방식이므로, 함수를 사용하여 인자의 값을 변경하도록 하려면 포인터 사용 필요. C++은 레퍼런스를 이용해서 할 수 있다. 하지만 이 방식이 무조건 좋은 방법은 아니다.

// C++
#include <stdio.h>

void swap(int &a, int &b);

int main(void){
	int a=10, b=20;
    swap(&a, &b);
    }

void swap(int &a, int &b){
	int temp;
    temp = a;
    a = b;
    b = temp;
    }

 


2. 연산자 (::) 사용법

 

cpp에서 include하여 사용할 때는 아래와 같이 사용한다.

<namespace>::<function>::~~

 

이를 생략하는 방법도 있다

using namespace <namespace>;

ex)

using namespace std;

 


3. 출/입 력문

 

C와 마찬가지로 printf도 가능하지만std 출력문을 사용한다. 

// 생략 비포함

std::cout << "HELLO" << std::endl;

// 생략 포함
using namespace std;

cout << "HELLO" << endl;

 

입력문은 반대로 한다 (scanf 가능)

// 생략 비포함
int num;
std::cout >> num;

 


4. new / delete 연산자 ( 메모리 생성 - C의 malloc)

 

C에서 메모리 할당은 malloc으로, 반납은 free 사용 -> C++은 new와 delete 사용

//int형 데이터 1개 저장 방법

int *pointerExample = new int;

//int형 데이터 10개 저장 방법

int *pointerExample = new int [10];

// C malloc 사용하는 경우 다음과 같이 어려움

int *pointerExample = (int *)malloc(sizeof(int)*10);

 

//int형 데이터 1개 삭제 방법

delete pointerExample;

★ 참고: '김용성의 C&C++ 완벽가이드'를 기반으로 작성

300x250

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

[C++] 2. vector 기본 사용법 [deque / list]  (0) 2023.03.09