Difference between r1.11 and the current
@@ -1,10 +1,15 @@
 * 시험 질문 받음 수업 ㅈㅈ
* Heap
* '''왜 Stack과 Heap은 분리되어야 하는가?'''
 * malloc()
 * void *malloc(size_t size)
   * char arr[128]과 char *arr = (char *)malloc(sizeof(char) * 128)의 차이* char **arr를 통해 char arr[8][8] (2차원 배열) 만들기
* 구조체의 동적할당 & 동적할당 된 구조체의 멤버 참조
 * void free(void *ptr)
  * 직접 메모리 제어의 위험성
  * '''열었으면 닫는다. 할당했으면 해제해준다. 반드시'''
 == 문자열 함수 ==* '''char * != char의 포인터 -> char * == 독자적인 타입'''
* '''type과 type에 연관된 operation == char *와 문자열 처리 함수들'''
@@ -17,5 +22,9 @@
    - long atol(const char *str)
- double atof(const char *str)
== 파일 입출력 ==
- double atof(const char *str)
== 파일 입출력 ==
 * FILE *타입
 * '''FILE *타입'''
   * '''type과 type에 연관된 operation == FILE *와 파일 입출력 함수들''' * FILE *의 생성 : FILE *fopen(const char *filename, const char *mode)
 * FILE에 쓰기 : size_t fwrite(const void *buffer, size_t size, size_t count, '''FILE *stream''')
 * FILE에서 읽기 : size)t fread(void *buffer, size_t size, size_t count, '''FILE *stream''')
 * FILE 닫기 : int fclose('''FILE *stream''')
- 시험 질문 받음 수업 ㅈㅈ
 
 
동적할당 ¶
문자열 함수 ¶
- char * != char의 포인터 -> char * == 독자적인 타입
 - type과 type에 연관된 operation == char *와 문자열 처리 함수들
 
 
- type과 type에 연관된 operation == char *와 문자열 처리 함수들
- 문자열의 길이 : size_t strlen(const char *s)
 
- 문자열 복사 : char *strcpy(char *dest, const char *src)
 
- 문자열 결합 : char *strcat(char *dest, char *src)
 
- 문자열 비교 : int strcmp(const char *s1, const char *s2)
 
- 문자열 -> 숫자 :
 - int atoi(const char *str)
 - long atol(const char *str)
 - double atof(const char *str)
 
파일 입출력 ¶
- FILE *타입
 - type과 type에 연관된 operation == FILE *와 파일 입출력 함수들
 
 
- type과 type에 연관된 operation == FILE *와 파일 입출력 함수들
- FILE *의 생성 : FILE *fopen(const char *filename, const char *mode)
 
- FILE에 쓰기 : size_t fwrite(const void *buffer, size_t size, size_t count, FILE *stream)
 
- FILE에서 읽기 : size)t fread(void *buffer, size_t size, size_t count, FILE *stream)
 
- FILE 닫기 : int fclose(FILE *stream)
 













