일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- sql
- 오라클
- MySQL
- 데이터베이스
- JPA
- IOS
- libasm
- 아이패드다이어리
- CI
- AI
- 오블완
- 프로그래밍언어론
- jenkins
- DBMS
- CD
- 소켓
- javascript
- swift
- 다이어리
- springboot
- 스프링
- 42seoul
- 리눅스
- 인공지능
- 스프링부트 웹 소켓
- Xcode
- Spring
- 티스토리챌린지
- 네트워크
- 스프링부트
- Today
- Total
목록프로그래밍 언어/C++ (4)
Hi yoahn 개발블로그
1. 댕글링 포인터 동적 할당된 변수를 다시 메모리 해제하는 경우, free를 통해 메모리를 해제할 수 있다. 하지만 할당되어있던 위치를 가리키던 포인터 변수는 여전히 그 위치를 가리키는 주소값을 가지고 있어서 해당 포인터가 NULL인지 검사할 때 NULL 이 아니라고 나오게 된다. 이렇게 할당 해제된 메모리 주소를 가리키는 포인터를 댕글링 포인터라고 한다. 댕글링 포인터를 사용하면 메모리 접근 시 프로그램이 예측 불가능한 동작을 하게 되는 위험이 있어서 사용하지 않는것이 좋다. 따라서 메모리가 해제된 곳을 가리키는 포인터를 다시 사용해야 하는 경우 할당 해제 후 포인터 변수에 NULL 값을 넣어 초기화해주는 것이 좋다. thinkpro.tistory.com/67 댕글링 포인터(Dangling Point..
1. NULL NULL 포인터 (void * )0 메모리 주소 0번지를 가리키는 포인터 0번지는 일반적인 프로그램이 접근 불가능한 메모리 영역이다. 포인터가 아무것도 가리키지 않는다는 것을 나타내기 위해 초기화 용도로 사용된다. NULL 이 0 으로 define 되어있다. 2. '\0' 아스키코드를 번호로 나타냈을 때 0번째 문자 널문자 값을 나타내는 것 char c = 0 == '\0' 3. "" 빈 문자열을 나타낸다.
C에서 가변인자 함수를 정의하는 방법 void func(int num_args, ...) # 주의 사항 최소 1개 이상의 고정 인수가 있어야 하며, '...' 은 매개변수 가장 마지막에 위치해야 한다. 1. 가변인수를 사용하기 위한 매크로 - va_list 가변인자를 저장하려면 가변 저장공간이 필요하다. va_list 라는 타입이 가변공간의 타입이 된다. va_list ap; => 여러 인수를 저장하는데 쓰일 타입을 선언하는 코드가 된다. 1) void va_start(va_list ap. last); : va_list 를 초기화하는 역할 => va_start를 사용하기 전에 va_list 타입이 이전에 선언되어 있어야 한다. - va_list (ap) : va_list 타입의 변수인 ap를 초기화 - ..
C++ 파일 관련 클래스 ifstream : input file stream ofstream : output file stream fstream : file stream cin, cout도 표준 입출력을 담당하는 객체 istream, ostream -> iostream 1. 출력스트림 #include #include using namespace std; int main(){ ofstream output; output.open("scores.txt"); output