์ ์ฒ๋ฆฌ๊ธฐ ์ง์๋ฌธ
์ ์ฒ๋ฆฌ๊ธฐ ์ง์๋ฌธ์ ํด์ ๊ธฐํธ( )๊ฐ ์์ ์ค๋ ํ๋ก๊ทธ๋จ ์ฝ๋์ ํฌํจ๋ ํ #์
๋๋ค. ์ด ํ์ ํ๋ก๊ทธ๋จ ๋ฌธ์ด ์๋๋ผ ์ ์ฒ๋ฆฌ๊ธฐ์ ๋ํ ์ง์๋ฌธ์
๋๋ค . ์ ์ฒ๋ฆฌ๊ธฐ๋ ์ฝ๋์ ์ค์ ์ปดํ์ผ์ด ์์๋๊ธฐ ์ ์ ์ฝ๋๋ฅผ ๊ฒ์ฌํ๊ณ ์ฝ๋๊ฐ ์ค์ ๋ก ์ผ๋ฐ ๋ช
๋ น๋ฌธ์ ์ํด ์์ฑ๋๊ธฐ ์ ์ ์ด๋ฌํ ๋ชจ๋ ์ง์๋ฌธ์ ํด๊ฒฐํฉ๋๋ค.
์ด๋ฌํ ์ ์ฒ๋ฆฌ๊ธฐ ์ง์๋ฌธ ์ ํ ์ค์ ์ฝ๋์์๋ง ํ์ฅ๋ฉ๋๋ค. ๊ฐํ ๋ฌธ์๊ฐ ๋ฐ๊ฒฌ๋๋ ์ฆ์ ์ ์ฒ๋ฆฌ๊ธฐ ์ง์๋ฌธ์ด ์ข
๋ฃ๋ฉ๋๋ค. ;์ ์ฒ๋ฆฌ๊ธฐ ์ง์๋ฌธ ๋์ ์ธ๋ฏธ์ฝ๋ก ( )์ด ํ์ํ์ง ์์ต๋๋ค . ์ ์ฒ๋ฆฌ๊ธฐ ์ง์๋ฌธ์ด ๋ ์ด์์ ์ค์ ํตํด ํ์ฅํ ์ ์๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ์ค ๋์ ์๋ ์ค ๋ฐ๊ฟ ๋ฌธ์ ์์ ๋ฐฑ์ฌ๋์( \)๋ฅผ ์ง์ ํ๋ ๊ฒ์
๋๋ค.
๋งคํฌ๋ก ์ ์(#define, #undef)
์ ์ฒ๋ฆฌ๊ธฐ ๋งคํฌ๋ก๋ฅผ ์ ์ํ๊ธฐ ์ํด #define. ๊ตฌ๋ฌธ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค . ์ ์ฒ๋ฆฌ๊ธฐ๊ฐ ์ด ์ง์๋ฌธ์ ๋ง๋๋ฉด ๋๋จธ์ง ์ฝ๋์์ ์ ๋ฐ์์ ๋ก ๋ฐ๊ฟ๋๋ค . ์ด๊ฒ์ ํํ์, ๋ช
๋ น๋ฌธ, ๋ธ๋ก ๋๋ ๋จ์ํ ๋ฌด์์ด๋ ๋ ์ ์์ต๋๋ค. ์ ์ฒ๋ฆฌ๊ธฐ๋ ์ ์ ํ C++๋ฅผ ์ดํดํ์ง ๋ชปํ๋ฉฐ ๋จ์ํ ์ ๋ฐ์์ ๋์ฒด ํฉ๋๋ค .
#define identifier replacement
identifierreplacementreplacementidentifierreplacement
#define TABLE_SIZE 100
int table1[TABLE_SIZE];
int table2[TABLE_SIZE];
์ ์ฒ๋ฆฌ๊ธฐ๊ฐ ๊ต์ฒด TABLE_SIZE๋๋ฉด ์ฝ๋๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
int table1[100];
int table2[100];
#define๋งค๊ฐ๋ณ์์ ํจ๊ป ์๋ํ์ฌ ํจ์ ๋งคํฌ๋ก๋ฅผ ์ ์ํ ์๋ ์์ต๋๋ค.
#define getmax(a,b) a>b?a:b
์ด๋ ๊ฒ ํ๋ฉด getmax2๊ฐ์ ์ธ์๊ฐ ๋ค๋ฐ๋ฅด๋ ์ ๋ฐ์์ ๋์ฒด ํํ์์ผ๋ก ๋์ฒดํ์ง๋ง ๊ฐ ์ธ์๋ฅผ ์๋ณ์๋ก ๋์ฒดํ๊ธฐ๋ ํฉ๋๋ค.
// function macro
#include <iostream>
using namespace std;
#define getmax(a,b) ((a)>(b)?(a):(b))
int main()
{
int x=5, y;
y= getmax(x,2);
cout << y << endl;
cout << getmax(7,x) << endl;
return 0;
}
์ ์๋ ๋งคํฌ๋ก๋ ๋ธ๋ก ๊ตฌ์กฐ์ ์ํฅ์ ๋ฐ์ง ์์ต๋๋ค. #undef๋งคํฌ๋ก๋ ์ ์ฒ๋ฆฌ๊ธฐ ์ง์๋ฌธ ์ผ๋ก ์ ์๋์ง ์์ ๋๊น์ง ์ง์๋ฉ๋๋ค .
#define TABLE_SIZE 100
int table1[TABLE_SIZE];
#undef TABLE_SIZE
#define TABLE_SIZE 200
int table2[TABLE_SIZE];
์ด๋ ๊ฒ ํ๋ฉด ๋ค์๊ณผ ๋์ผํ ์ฝ๋๊ฐ ์์ฑ๋ฉ๋๋ค.
int table1[100];
int table2[200];
ํจ์ ๋งคํฌ๋ก ์ ์ ๋ ๋์ฒด ์ํ์ค์์ ๋ ๊ฐ์ ํน์ ์ฐ์ฐ์( #๋ฐ )๋ฅผ ํ์ฉํฉ๋๋ค. ๋งค๊ฐ๋ณ์ ์ด๋ฆ์ด ๋ค์ ์ค๋ ์ฐ์ฐ์ ๋ ์ ๋ฌ๋ ์ธ์๋ฅผ ํฌํจํ๋ ๋ฌธ์์ด ๋ฆฌํฐ๋ด๋ก ๋์ฒด๋ฉ๋๋ค(ํฐ๋ฐ์ดํ๋ก ๋ฌถ์ธ ๊ฒ์ฒ๋ผ).##
#define str(x) #x cout << str(test);
์ด๊ฒ์ ๋ค์๊ณผ ๊ฐ์ด ๋ฒ์ญ๋ ๊ฒ์ ๋๋ค:
#define str(x) #x
cout << str(test);
์ด๊ฒ์ ๋ค์๊ณผ ๊ฐ์ด ๋ฒ์ญ๋ ๊ฒ์ ๋๋ค:
cout << "test";
์ฐ์ฐ์๋ ##๋ ์ธ์ ์ฌ์ด์ ๊ณต๋ฐฑ์ ๋จ๊ธฐ์ง ์๊ณ ๋ ์ธ์๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค.
#define glue(a,b) a ## b
glue(c,out) << "test";
์ด๊ฒ์ ๋ํ ๋ค์๊ณผ ๊ฐ์ด ๋ฒ์ญ๋ ๊ฒ์ ๋๋ค:
cout << "test";
์ ์ฒ๋ฆฌ๊ธฐ ๊ต์ฒด๋ C++ ๊ตฌ๋ฌธ ๊ฒ์ฌ ์ ์ ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ๋งคํฌ๋ก ์ ์๋ ๊น๋ค๋ก์ด ๊ธฐ๋ฅ์ผ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋ณต์กํ ๋งคํฌ๋ก์ ํฌ๊ฒ ์์กดํ๋ ์ฝ๋๋ ๊ฐ๋ ์ฑ์ด ๋จ์ด์ง๋๋ค. ์์๋๋ ๊ตฌ๋ฌธ์ด C++์์ ํ๋ก๊ทธ๋๋จธ๊ฐ ๊ธฐ๋ํ๋ ์ผ๋ฐ ํํ์๊ณผ ๋ง์ ๊ฒฝ์ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋๋ค.
์กฐ๊ฑด๋ถ ํฌํจ(#ifdef, #ifndef, #if, #endif, #else ๋ฐ #elif)
์ด ์ง์๋ฌธ์ ์ฌ์ฉํ๋ฉด ํน์ ์กฐ๊ฑด์ด ์ถฉ์กฑ๋๋ฉด ํ๋ก๊ทธ๋จ ์ฝ๋์ ์ผ๋ถ๋ฅผ ํฌํจํ๊ฑฐ๋ ์ญ์ ํ ์ ์์ต๋๋ค.
#ifdef๋งค๊ฐ๋ณ์๋ก ์ง์ ๋ ๋งคํฌ๋ก๊ฐ ๊ฐ์ ๊ด๊ณ์์ด ์ ์๋ ๊ฒฝ์ฐ์๋ง ํ๋ก๊ทธ๋จ์ ์น์
์ ์ปดํ์ผํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด:
#ifdef TABLE_SIZE
int table[TABLE_SIZE];
#endif
์ด ๊ฒฝ์ฐ ์ฝ๋ ํ์ ๊ฐ๊ณผ ๊ด๊ณ์์ด ๋ก ์ด์ ์ ์ ์ int table[TABLE_SIZE];๋ ๊ฒฝ์ฐ์๋ง ์ปดํ์ผ๋ฉ๋๋ค . ์ ์๋์ง ์์ ๊ฒฝ์ฐ ํด๋น ํ์ ํ๋ก๊ทธ๋จ ์ปดํ์ผ์ ํฌํจ๋์ง ์์ต๋๋ค. ์ ๋ฐ๋์ ์ญํ ์ ํฉ๋๋ค. ๋ฐ ์ง์๋ฌธ ์ฌ์ด์ ์ฝ๋๋ ์ง์ ๋ ์๋ณ์๊ฐ ์ด์ ์ ์ ์๋์ง ์์ ๊ฒฝ์ฐ์๋ง ์ปดํ์ผ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด:TABLE_SIZE#define
#ifndef#ifndef#endif
#ifndef TABLE_SIZE
#define TABLE_SIZE 100
#endif
int table[TABLE_SIZE];
์ด ๊ฒฝ์ฐ ์ด ์ฝ๋ ์กฐ๊ฐ์ ๋๋ฌํ ๋ TABLE_SIZE๋งคํฌ๋ก๊ฐ ์์ง ์ ์๋์ง ์์ ๊ฒฝ์ฐ ๊ฐ 100์ผ๋ก ์ ์๋ฉ๋๋ค. ์ด๋ฏธ ์กด์ฌํ๋ ๊ฒฝ์ฐ #define์ง์๋ฌธ์ด ์คํ๋์ง ์์ผ๋ฏ๋ก ์ด์ ๊ฐ์ ์ ์งํฉ๋๋ค.
, ๋ฐ (์ฆ #if, "else if") ์ง์๋ฌธ์ ์ฃผ๋ณ์ ์ฝ๋ ๋ถ๋ถ์ด ์ปดํ์ผ๋๊ธฐ ์ํด ์ถฉ์กฑ๋์ด์ผ ํ๋ ์ผ๋ถ ์กฐ๊ฑด์ ์ง์ ํ๋ ์ญํ ์ ํฉ๋๋ค. ๋งคํฌ๋ก ํํ์์ ํฌํจํ์ฌ ์์ ํํ์ ๋ค์์ ๋์ค ๊ฑฐ๋ ํ๊ฐํ ์ ์๋ ์กฐ๊ฑด์
๋๋ค . ์๋ฅผ ๋ค์ด:#else#elif#if#elif
#if TABLE_SIZE>200
#undef TABLE_SIZE
#define TABLE_SIZE 200
#elif TABLE_SIZE<50
#undef TABLE_SIZE
#define TABLE_SIZE 50
#else
#undef TABLE_SIZE
#define TABLE_SIZE 100
#endif
int table[TABLE_SIZE];
์ ์ ์ฒด ๊ตฌ์กฐ #if๋ฐ ์ฐ๊ฒฐ ์ง์๋ฌธ #elif์ด . ๋ฐ ์ ๋์์ ํน์ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉ ํ๊ณ ๊ฐ๊ฐ any ๋๋ ์ง์๋ฌธ์์ ์ํํ ์๋ ์์ต๋๋ค.#else#endif
#ifdef#ifndefdefined!defined#if#elif
#if defined ARRAY_SIZE
#define TABLE_SIZE ARRAY_SIZE
#elif !defined BUFFER_SIZE
#define TABLE_SIZE 128
#else
#define TABLE_SIZE BUFFER_SIZE
#endif
๋ผ์ธ ์ ์ด(#line)
์ฐ๋ฆฌ๊ฐ ํ๋ก๊ทธ๋จ์ ์ปดํ์ผํ๊ณ ์ปดํ์ผ ๊ณผ์ ์์ ์ด๋ค ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฉด ์ปดํ์ผ๋ฌ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ ํ์ผ์ ์ด๋ฆ๊ณผ ์ค ๋ฒํธ์ ๋ํ ์ฐธ์กฐ์ ํจ๊ป ์ค๋ฅ ๋ฉ์์ง๋ฅผ ํ์ํ๋ฏ๋ก ์ค๋ฅ๋ฅผ ์์ฑํ๋ ์ฝ๋๋ฅผ ๋ ์ฝ๊ฒ ์ฐพ์ ์ ์์ต๋๋ค.
์ด #line์ง์๋ฌธ์ ์ฌ์ฉํ๋ฉด ์ฝ๋ ํ์ผ ๋ด์ ์ค ๋ฒํธ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ ๋ ํ์ํ ํ์ผ ์ด๋ฆ์ ๋ชจ๋ ์ ์ดํ ์ ์์ต๋๋ค. ํ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ์ฌ๊ธฐ์ ๋ค์ ์ฝ๋ ์ค์ ํ ๋น๋ ์ ์ค ๋ฒํธ์
๋๋ค. ์ด ์์ ๋ถํฐ ์ฐ์๋๋ ์ค์ ์ค ๋ฒํธ๊ฐ ํ๋์ฉ ์ฆ๊ฐํฉ๋๋ค. ํ์๋ ํ์ผ ์ด๋ฆ์ ์ฌ์ ์ํ ์ ์๋ ์ ํ์ ๋งค๊ฐ๋ณ์์
๋๋ค. ์๋ฅผ ๋ค์ด:
#line number "filename"
number
"filename"
#line 20 "assigning variable"
int a?;
"assigning variable"์ด ์ฝ๋๋ ํ์ผ 20ํ ์ ์ค๋ฅ๋ก ํ์๋๋ ์ค๋ฅ๋ฅผ ์์ฑํฉ๋๋ค .
์ค๋ฅ ์ง์๋ฌธ(#error)
์ด ์ง์๋ฌธ์ ๋ฐ๊ฒฌ๋๋ฉด ์ปดํ์ผ ํ๋ก์ธ์ค๋ฅผ ์ค๋จํ๊ณ ๋งค๊ฐ๋ณ์๋ก ์ง์ ํ ์ ์๋ ์ปดํ์ผ ์ค๋ฅ๋ฅผ ์์ฑํฉ๋๋ค.
#ifndef __cplusplus
#error A C++ compiler is required!
#endif
์ด ์์ ๋ ๋งคํฌ๋ก ์ด๋ฆ์ด ์ ์๋์ง ์์ ๊ฒฝ์ฐ ์ปดํ์ผ ํ๋ก์ธ์ค๋ฅผ ์ค๋จํฉ๋๋ค __cplusplus(์ด ๋งคํฌ๋ก ์ด๋ฆ์ ๋ชจ๋ C++ ์ปดํ์ผ๋ฌ์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ์๋จ).
์์ค ํ์ผ ํฌํจ(#include)
์ด ์ง์๋ฌธ์ ์ด ํํ ๋ฆฌ์ผ์ ๋ค๋ฅธ ์น์ ์์ ์ด์ฌํ ์ฌ์ฉ๋์์ต๋๋ค. ์ ์ฒ๋ฆฌ๊ธฐ๊ฐ #include์ง์๋ฌธ์ ์ฐพ์ผ๋ฉด ์ง์ ๋ ํค๋ ๋๋ ํ์ผ์ ์ ์ฒด ๋ด์ฉ์ผ๋ก ๋์ฒดํฉ๋๋ค. ๋ ๊ฐ์ง ์ฌ์ฉ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค #include.
#include <header>
#include "file"
์ฒซ ๋ฒ์งธ ๊ฒฝ์ฐ์๋ ๊บพ์ ๊ดํธ ์ฌ์ด ์ ํค๋<> ๊ฐ ์ง์ ๋ฉ๋๋ค . iostreamํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ( , string,...) ๋ฅผ ๊ตฌ์ฑํ๋ ํค๋์ ๊ฐ์ด ๊ตฌํ์์ ์ ๊ณตํ๋ ํค๋๋ฅผ ํฌํจํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค . ํค๋๊ฐ ์ค์ ๋ก ํ์ผ์ธ์ง ์๋๋ฉด ๋ค๋ฅธ ํ์์ผ๋ก ์กด์ฌํ๋์ง ์ฌ๋ถ๋ ๊ตฌํ์ ๋ฐ๋ผ ์ ์ ๋์ง๋ง ์ด๋ค ๊ฒฝ์ฐ์๋ ์ด ์ง์๋ฌธ์ ์ ์ ํ๊ฒ ํฌํจ๋์ด์ผ ํฉ๋๋ค.
๋ ๋ฒ์งธ์ ์ฌ์ฉ๋ ๊ตฌ๋ฌธ #include์ ๋ฐ์ดํ๋ฅผ ์ฌ์ฉํ๊ณ ํ์ผ ์ ํฌํจํฉ๋๋ค . ํ์ผ ์ ์ผ๋ฐ์ ์ผ๋ก ํ์ฌ ๊ฒฝ๋ก๋ฅผ ํฌํจ ํ๋ ๊ตฌํ ์ ์ ๋ฐฉ์์ผ๋ก ๊ฒ์ ๋ฉ๋๋ค. ํ์ผ์ ์ฐพ์ ์ ์๋ ๊ฒฝ์ฐ ์ปดํ์ผ๋ฌ๋ ์ง์๋ฌธ์ ํค๋ ๋ก ํด์ํฉ๋๋ค.""๋ฐ์ดํ( )๊ฐ ๊บพ์ ๊ดํธ( )๋ก ๋์ฒด๋ ๊ฒ์ฒ๋ผ ํฌํจ๋ฉ๋๋ค <>.
Pragma ์ง์๋ฌธ(#pragma)
์ด ์ง์๋ฌธ์ ์ปดํ์ผ๋ฌ์ ๋ค์ํ ์ต์
์ ์ง์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ฌํ ์ต์
์ ์ฌ์ฉํ๋ ํ๋ซํผ ๋ฐ ์ปดํ์ผ๋ฌ์ ๋ฐ๋ผ ๋ค๋ฆ
๋๋ค. ๋ก ์ ์ํ ์ ์๋ ๊ฐ๋ฅํ ๋งค๊ฐ๋ณ์์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ค๋ช
์ ๋๋ ์ปดํ์ผ๋ฌ ์ฐธ์กฐ๋ฅผ ์ฐธ์กฐํ์ญ์์ค #pragma.
์ปดํ์ผ๋ฌ๊ฐ ์ ๋ํ ํน์ ์ธ์๋ฅผ ์ง์ํ์ง ์์ผ๋ฉด #pragma๋ฌด์๋ฉ๋๋ค. ๊ตฌ๋ฌธ ์ค๋ฅ๊ฐ ์์ฑ๋์ง ์์ต๋๋ค.
๋ฏธ๋ฆฌ ์ ์๋ ๋งคํฌ๋ก ์ด๋ฆ
๋ค์ ๋งคํฌ๋ก ์ด๋ฆ์ ํญ์ ์ ์๋ฉ๋๋ค(๋ชจ๋ ๋ ๊ฐ์ ๋ฐ์ค ๋ฌธ์๋ก ์์ํ๊ณ ๋๋จ _).
๋งคํฌ๋ก | ๊ฐ |
__LINE__ | ์ปดํ์ผ ์ค์ธ ์์ค ์ฝ๋ ํ์ผ์ ํ์ฌ ์ค์ ๋ํ๋ด๋ ์ ์ ๊ฐ์ ๋๋ค. |
__FILE__ | ์ปดํ์ผ๋๋ ์์ค ํ์ผ์ ์ถ์ ์ด๋ฆ์ ํฌํจํ๋ ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ๋๋ค. |
__DATE__ | ์ปดํ์ผ ํ๋ก์ธ์ค๊ฐ ์์๋ ๋ ์ง๋ฅผ ํฌํจํ๋ "Mmm dd yyyy" ํ์์ ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ๋๋ค. |
__TIME__ | ์ปดํ์ผ ํ๋ก์ธ์ค๊ฐ ์์๋ ์๊ฐ์ ํฌํจํ๋ "hh:mm:ss" ํ์์ ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ๋๋ค. |
__cplusplus | ์ ์ ๊ฐ์
๋๋ค. ๋ชจ๋ C++ ์ปดํ์ผ๋ฌ์๋ ์ด ์์๊ฐ ์ผ๋ถ ๊ฐ์ผ๋ก ์ ์๋์ด ์์ต๋๋ค. ๊ทธ ๊ฐ์ ์ปดํ์ผ๋ฌ์์ ์ง์ํ๋ ํ์ค ๋ฒ์ ์ ๋ฐ๋ผ ๋ค๋ฆ
๋๋ค.
|
__STDC_HOSTED__ | 1๊ตฌํ์ด ํธ์คํ
๋ ๊ตฌํ ์ธ ๊ฒฝ์ฐ (๋ชจ๋ ํ์ค ํค๋๋ฅผ ์ฌ์ฉํ ์ ์์) 0๊ทธ๋ ์ง ์์ผ๋ฉด. |
๋ค์ ๋งคํฌ๋ก๋ ์ผ๋ฐ์ ์ผ๋ก ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๋์ง ์ฌ๋ถ์ ๋ฐ๋ผ ์ ํ์ ์ผ๋ก ์ ์๋ฉ๋๋ค.
๋งคํฌ๋ก | ๊ฐ |
__STDC__ | C: ์ ์ ์๋ ๊ฒฝ์ฐ 1๊ตฌํ์ C ํ์ค์ ๋ฐ๋ฆ
๋๋ค. C++์์: ๊ตฌํ์ด ์ ์๋์์ต๋๋ค. |
__STDC_VERSION__ | C์์:
|
__STDC_MB_MIGHT_NEQ_WC__ | 1๋ฉํฐ๋ฐ์ดํธ ์ธ์ฝ๋ฉ์ด ๋ฌธ์ ๋ฆฌํฐ๋ด์์ ๋ฌธ์์ ๋ค๋ฅธ ๊ฐ์ ์ ๊ณตํ ์ ์๋ ๊ฒฝ์ฐ |
__STDC_ISO_10646__ | yyyymmL์ ๋์ฝ๋ ํ์ค ๋ ์ง ๋ค์ wchar_t๋ฌธ์ ์ธ์ฝ๋ฉ์ ์ง์ ํ๋ ํ์์ ๊ฐ |
__STDCPP_STRICT_POINTER_SAFETY__ | 1๊ตฌํ์ ์๊ฒฉํ ํฌ์ธํฐ ์์ ์ฑ ์ด ์๋ ๊ฒฝ์ฐ ( ์ฐธ์กฐ get_pointer_safety) |
__STDCPP_THREADS__ | 1ํ๋ก๊ทธ๋จ์ด ๋ ์ด์์ ์ค๋ ๋๋ฅผ ๊ฐ์ง ์ ์๋ ๊ฒฝ์ฐ |
ํน์ ๊ตฌํ์ ์ถ๊ฐ ์์๋ฅผ ์ ์ํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด:
// standard macro names
#include <iostream>
using namespace std;
int main()
{
cout << "This is the line number " << __LINE__;
cout << " of file " << __FILE__ << ".\n";
cout << "Its compilation began " << __DATE__;
cout << " at " << __TIME__ << ".\n";
cout << "The compiler gives a __cplusplus value of " << __cplusplus;
return 0;
}
'๐ Development Study > ๐จ๐พโ๐ป C++' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ค๋งํธ ํฌ์ธํฐ (0) | 2023.01.03 |
---|---|
ํ์ผ ์ ์ถ๋ ฅ (1) | 2022.08.22 |
exception (0) | 2022.08.22 |
ํ๋ณํ (0) | 2022.08.22 |
๋คํ์ฑ (0) | 2022.08.22 |
๋๊ธ