일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- graph
- web
- String
- BFS
- server
- dfs
- 인프런
- Algorithm
- 종만북
- BASIC
- BOJ
- C언어
- Cleancode
- 따배씨
- udemy
- Python
- Algospot
- programmers
- C
- 백준
- sorting
- 따라하면서 배우는 C언어
- Math
- JavaScript
- greedy
- 생활코딩
- 정수론
- DP
- 따라하며 배우는 C언어
- php
- Today
- Total
목록C언어 (190)
몽상실현개발주의
따배씨 - 따라하며 배우는 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 -..
따배씨 - 따라하며 배우는 C언어 16강 전처리기와 라이브러리 16.1 전처리기 Pre-processor 가 해주는 일들 Compiler: 코드를 입력하고 실행파일을 만드는 일 -> Build 명확하게는 전처리기는 Compiler 는 아님 Complier 가 어떤 일을 하는지에 따라 전처리기의 역할이 다름 Compiler 는 코드의 중요한 문법들을 해석해서 실행 할 수 있는 형태로 바꾸어주는 역할 Linker 는 파일들을 연결 시켜 주는 역할 전처리기 Code 와 Compiler 를 연결해 주는 역할 프로그래머의 반복적인 작업을 도와주는 역할 조건적으로 compiler 하는 기능 이 글의 모든 사진과 내용의 출처는 홍정모 교수님께 있음을 알려드립니다. http://blog.naver.com/atelier..