일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 인프런
- Math
- dfs
- BASIC
- BOJ
- C언어
- greedy
- DP
- 따배씨
- 따라하면서 배우는 C언어
- C
- programmers
- 종만북
- web
- server
- Algospot
- JavaScript
- Algorithm
- 백준
- Cleancode
- Python
- graph
- sorting
- php
- BFS
- udemy
- String
- 따라하며 배우는 C언어
- 생활코딩
- 정수론
- Today
- Total
목록Language/C (186)
몽상실현개발주의
따배씨 - 따라하며 배우는 C언어 16강 전처리기와 라이브러리 16.9 #pragma 지시자 Compiler 에게 Complie 에 대한 지시를 내리는 전처리 지시자 #pragma once include header guard : 중복으로 header 를 include 하는것을 방지 #ifndef SAMPLE_HEADER #define SAMPLE_HEADER // header 내용 #endif 같은 동작을 정의, #pragma once 와 함께 사용 가능 #pragma pack(1) 구조체의 padding size 를 설정 #pragma warning( disable : 4477) Warning 을 disable #pragma warning( error : 4477) Warning 을 Error 처리 ..
따배씨 - 따라하며 배우는 C언어 16강 전처리기와 라이브러리 16.8 미리 정의된 매크로들 #line, #error #include #include "DifferentFile.h" void different_function(void); int main() { printf("__FILE__ : %s\n", __FILE__); // __FILE__ : /Users/leejuho/Desktop/studyC/studyC/main.c printf("__DATE__ : %s\n", __DATE__); // __DATE__ : May 3 2021 printf("__TIME__ : %s\n", __TIME__); // __TIME__ : 16:31:12 printf("__LINE__ : %d\n", __LINE__)..
따배씨 - 따라하며 배우는 C언어 16강 전처리기와 라이브러리 16.7 조건에 따라 다르게 컴파일하기 Conditional Compilation #include /* #define, #undef, #if, #ifdef, #ifndef, #else, #elif, #endif */ /* #undef */ #define LIMIT 400 //#undef LIMIT // It's ok to undefine previously NOT defined macro. #undef NON_DEFINED int main() { printf("%d\n", LIMIT); return 0; } #undef NON_DEFINED NON_DEFINED 를 define 해주지 않았지만, 문제 없음 // my_function_1.h #..
따배씨 - 따라하며 배우는 C언어 16강 전처리기와 라이브러리 16.6 #include 와 헤더파일 // my_functions.h #pragma once extern int status; static int si = 0; extern int add(int a, int b); static int multiply(int a, int b) { return a * b; } //int substract(int a, int b) inline int subtract(int a, int b) { return a - b; } void print_status(void); void print_address(void); #pragma once hader file 이 한번만 include 되도록 설정 #ifndef __MY_..
따배씨 - 따라하며 배우는 C언어 16강 전처리기와 라이브러리 16.5 가변 인수 매크로 Variadic Macros #include #include /* Variadic Macros accept a variable number of arguments. */ #define PRINT(X, ...) printf("Message " #X ": " __VA_ARGS__) // ... : ellipes // __VA_ARGS : one of the predefined macros /* printf(...) stdvar.h Variadic arguments */ int main() { double x = 48; double y; y = sqrt(x); PRINT(1, "x = %g\n", x); // Messag..
따배씨 - 따라하며 배우는 C언어 16강 전처리기와 라이브러리 16.4 함수 같은 메크로 #include /* Function-like macros #define ADD(X,Y) ((X) + (Y)) X and Y : macro arguments */ #define ADD1(X,Y) X+Y #define ADD2(X,Y) ((X)+(Y)) #define SQUARE(X) X*X // ((X)*(X)) int main() { int sqr = SQUARE(3); int a = 1; printf("%d\n", 2 * ADD1(1, 3)); // 2 * X + Y = 2 * 1 + 3 = 5 //WRONG!! printf("%d\n", 2 * ADD2(1, 3)); // 2 * (1 + 3) = 8 print..
따배씨 - 따라하며 배우는 C언어 16강 전처리기와 라이브러리 16.3 #define 매크로 #include /* Preprocessor directives begins with # simbol at the beginning of a line. */ /* Macro - An instruction that represents a sequence of instructions in abbreviated form. */ /* #define SAY_HELLO printf("Hello, World!"); preprocessor Macro (name) body (or replacement list) directive Macro expansion - macro 가 body 의 내용으로 교체되는 것을 의미 */ /* O..
따배씨 - 따라하며 배우는 C언어 16강 전처리기와 라이브러리 16.2 전처리기를 준비하는 번역 단계 Translation phase #include int main() { /* Program written in C Translating - 전처리기의 앞에서 이루어 지거나 전처리기에 포함된 과정으로 혼용하여 봄 Preprocessing Compiling - Compiler 가 모두 처리한다는 표현으로 사용하기도 함 Linking Executable */ /* International characters */ puts("안녕하세요? 한글입니다.\n"); // 국제 다국어로 작성된 코드를 내부적으로 Translating 단계에서 이해 할 수 있는 문자 집합으로 처리 /* Trigraph Sequences -..