![[C++] typedef](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcbM5zE%2FbtsGOdL4yO2%2FJ0yCdQu3J9pbKiGCE5L7l0%2Fimg.jpg)
typedefC/C++의 예약어이며 저장소 클래스 지정자 중 하나이다.프로그래머가 타입의 별칭을 생성하고, 실제 타입 이름 대신 별칭을 사용할 수 있다.즉, C++에서 이미 정의된 자료형이나 사용자 정의 자료형보다 더 짧거나 의미 있는 이름을 지어줄 수 있다.장점읽기 편하고, 입력하기 편하다.호환성이 좋아진다.유연성이 생긴다.사용법typedef를 선언하려면 typedef 키워드를 사용하고 자료형 다음에 별칭 이름을 사용하면 된다. typedef int LENGTH;typedef 재정의할 자료형 재정의할 이름;예제123456789101112#include stdio.h>#include stdlib.h> typedef un..
![[C++] Struct 구조체 / 구조체 배열 / 구조체 배열 포인터](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FomuuM%2FbtsGLikSjJR%2FuCtCeMjdrimtTmpVHMMtvk%2Fimg.jpg)
구조체 (struct)사용자가 하나 이상의 기본 타입을 가지고 새로운 자료형을 정의하는 사용자 정의 타입(🔹 사용자 정의 타입 : int, char, double과 같은 자료형을 사용자가 임의로 만드는 것.)모든 정보를 하나의 단위로 묶을 수 있는 형식이다.서로 관련된 정보를 하나의 단위로 묶어서 저장할 수 있다.하나의 구조체 안에 여러 종류의 데이터를 저장할 수 있다.❓사용하는 이유농구 선수에 관련된 모든 정보들을 저장한다고 했을 때, 이를 위해 각 이름, 연봉, 신장, 체중, 평균 득점 수, 자유투 성공률, 어시스트 수 등의 정보를 저장해야 할 때 구조체를 사용하여 관리하면 편하다. 💡 왜 배열은 적합하지 않을까?배열은 여러 개의 값을 저장할 수는 있지만, 데이터형이 모두 같아야 하기 때문이다.(..
![[C++] 포인터(pointer), 2차 포인터](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbTylUy%2FbtsGKWBuGs0%2Fj2MREVhuTgXcumndZ7DBH0%2Fimg.jpg)
Pointer포인터는 일반 데이터를 저장하는 변수가 아닌 메모리의 주소 값을 저장하는 변수이다.포인터도 변수기 때문에 메모리 어딘가에 저장되기 때문에 포인터도 주소 값을 가지고 있다.포인터 연산자포인터 변수를 이용하면서 2가지의 연산자가 사용되는데, & 과 *이다.여기서 &는 주소 연산자이고 *은 참조 연산자이다. 🟣 주소 연산자 &는 변수 이름 앞에 사용하여 해당 변수의 메모리 주소 값을 반환한다.🟣 참조 연산자 *는 포인터의 이름이나 주소 앞에 사용하며 해당 주소를 참조하여 주소에 저장되어 있는 값을 반환한다.포인터 예제123456789101112131415#include stdio.h> int main(){ int a = 10; printf("a = %d\n", a); // a = ..
![[C++] printf로 출력, 자료형, sizeof](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcDHCif%2FbtsGKVvIpev%2FtSMH3ns1QfrqAXe0RPoLu0%2Fimg.jpg)
printfC/C++에서 넣어준 글자를 출력해주는 함수이다.기본 사용법- 헤더 파일 inclue하기- printf ("출력할 데이터와 그 서식", 변수 1, 변수 2... );printf() 서식 문자 정수형%d : 10진수 정수%x : 16진수 정수 (소문자)%X : 16진수 정수 (대문자) 실수형%f : 10진수 실수 (float형)%e : 10진수 실수 (지수형 표기)%lf : 10진수 실수 (double형) 문자열%s : 문자열 출력printf에서 사용하는 특수기호\' : 작은따옴표\" : 큰 따옴표\? : 물음표\\ : 백 슬래시(\)\n : 줄 바꿈, 개행, new line\t : 수평 탭 (tab)sizeof데이터(변수, 상수, 타입등..)의 크기를 반환하는 연산자.데이터 크기의 단위는 바..
![[C++] #define - 매크로](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcldJMA%2FbtsFF0TBSRQ%2FGFwu25KRqlVwaFOWdskMu0%2Fimg.jpg)
#define-매크로-전처리기-단순 치환장점1. 가독성2. 유지보수사용법#define 매크로이름 치환할 값 #define NUMBERONE 1 ⚠️주의점⚠️단순 치환이기 때문에 세미콜론을 작성할 경우 세미콜론까지 치환해버린다예제11234567891011121314151617#define NUMBERONE 1#define NUMBERTWO 2 #include iostream>using namespace std; int main() { int num1 = NUMBERONE; int num2 = NUMBERTWO; cout num1 endl; cout num2 endl; return 0;} cs실행 결과예제21234567891011121314151617181920212..
![[C++] C++의 컴파일 순서](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRgQTK%2FbtsGHkKU5Ma%2FClKd60BQyhNFx8UwpJTyMk%2Fimg.jpg)
[C, C++] 컴파일 순서Cpp(기계어로 번역) ➡️ 전처리기(#include 같이 #으로 시작하는 건) ➡️ 컴파일 ➡️ 어셈블링 - obj(목적) 파일 생성 ➡️ Linker ➡️ exe1. Preprocessor (전처리단계)매크로 프로세서(MacroProcess)라고 한다. C++언어로 작성된 프로그램의 소스를 문법적으로 해석하고 구문 에러(Syntax error)의 존재 여부 등 을 평가한다. 주석으로 되어있는 문장을 제거한다. #include, #define, #indef, #else, #endif, using, typedef 와 같은 키워드에 따라 필요한 파일들을 읽고 실제 컴파일이 가능하도록 프로그램 소스를 만드는 작업을 수행한다.2. Complie (컴파일)전처리 단계에서 제공한 프로그..