일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- dfs
- sorting
- String
- php
- programmers
- C언어
- Algospot
- BOJ
- server
- 정수론
- DP
- JavaScript
- web
- Algorithm
- greedy
- 생활코딩
- 따라하면서 배우는 C언어
- graph
- BASIC
- Math
- 따배씨
- 따라하며 배우는 C언어
- C
- BFS
- 인프런
- 백준
- udemy
- Python
- Cleancode
- 종만북
- Today
- Total
목록C언어 (190)
몽상실현개발주의
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.5 자동 변수 Automatic Variables #include /* Automatic storage class - Automatic storage duration, block scope, no linkage - Any variable declared in a block or function header */ int main(){ auto int a; // Keyworld auto : a storage-class specifier a = 1024; //printf("%d\",a); //auto int b = a * 3; return 0; } auto int a; a = 10..
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.4 저장 공간의 다섯 가지 분류 Five Storage Classes 저장 공간의 분류는 크게 두가지로도 나눌 수 있다 Static이 아닌것 Automatic 모든 지역변수 지속기간과 영역을 프로그래머가 지정 해 주는 것이 아니 꼭 필요한 기간에만 지속이 되고 필요한 부분에서만 볼 수 있도록 영역을 지정 해 줌 Register CPU 안의 임시 작업 공간인 레지스터에 올라갈 가능성이 높아짐 최신 Compiler 는 Register 선언을 하지 않아도 알아서 Register 를 사용하여 효율을 높여줌 Static 프로그램이 시작될 때 부터 끝날 때 까지 메모리 공간에 유지 In..
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.3 변수의 영역 Scope 과 연결 상태 Linkage, 객체의 지속 기간 Duration #include /* Variable scopes (visibility) - block, function, function prototype, file. */ // file scope int g_i = 123; // global variable int g_j; // global variable void func1(){ g_i++; // uses g_i } void func2(){ g_i += 2; // uses g_i // local = 456; // Error } int main(){..
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.2 객체 Object 와 식별자 Identifier, L-value 와 R-value #include int main(){ /* Object - "An Object is simply a block of memory that can sotre a value." - Object has more developed meaning in C++ and Object Oriented Programming Identifiers - Names of variables, function, macros, amd other entities */ int var_name = 3; // creates an..
따배씨 - 따라하며 배우는 C언어 12강 Storage Classes, Linkage and Memory Management 12.1 메모리 레이아웃 훑어보기 프로그램 코드는 변형이 되면 안되기 때문에 TEXT Segment 에 읽기 전용으로 저장됨 프로그램이 실행되면서 코드도 프로그램이 종료 될 때 까지 메모리 계속 존재 전역변수로 메모리를 선언하는것이 가장 편하지만, 프로그램이 끝날 때 까지 메모리가 할당 되어 있는것은 비 효율적임 블럭 안에서 선언되는 메모리는 stack 에 할당, 그 블럭이 실행되는 동안에만 메모리에 할당되고 블럭의 실행이 종료되면 운영체제에게 메모리 권한을 넘겨줌 효율적인 메모리 사용 가능 main() 함수에 선언된 변수의 메모리는, main 함수의 특성상 프로그램이 종료될때 까..
따배씨 - 따라하며 배우는 C언어 11강 문자열 함수들 11.11 문자열을 숫자로 바꾸는 방법들 #include #include int main(int argc, char* argv[]){ /* string to integer, double, long atoi(), atof(), atol() */ if (argc < 3) printf("Wrong Usage of %s\n", argv[0]); else{ int times = atoi(argv[1]); for (int i = 0; i < times; i++) puts(argv[2]); } return 0; } #include #include int main(int argc, char* argv[]){ /* string to integer, double, l..
따배씨 - 따라하며 배우는 C언어 11강 문자열 함수들 11.10 명령줄 인수 Command-Line Arguments #include int main(int argc, char* argv[]){ int count; printf("The command line has %d arguments:\n", argc); for (count = 0; count < argc; count++) printf("Arg %d : %s\n", count, argv[count]); printf("\n"); return 0; } int main(int argc, char* argv[]){ return 0; } Command Line Argument 프로그램이 실행되면서 Command Line 상에서 입력되는 명령어를 처리 운영체..
따배씨 - 따라하며 배우는 C언어 11강 문자열 함수들 11.9 문자함수 ctype.h 를 문자열에 사용하기 #include #include #include #define NUM_LIMIT 1024 void toUpper(char*); int PunctCount(const char*); int main(){ char line[NUM_LIMIT]; char* new_line = NULL; fgets(line, NUM_LIMIT, stdin); // fine first newLine new_line = strchr(line, '\n'); if (new_line) *new_line = '\0'; // '\n' 을 '\0'로 교체 toUpper(line); puts(line); printf("%d\n", Pun..