C++에서의 포인터 이해

C++에서 포인터는 메모리 주소를 저장하는 변수로, 다른 변수나 객체에 간접적으로 접근하고 조작할 수 있습니다. 1. 포인터의 개념 포인터는 특정 데이터의 메모리 주소를 저장하는 변수입니다. 자신의 메모리 주소도 존재하지만, 저장된 값은 다른 변수의 주소입니다. 2. 포인터 선언 문법 타입 *변수명; // 예: int *ptr; double *p; - 별표(*)의 위치는 ...

6월 30일 04:31에 게시됨

C 언어 문자열 및 메모리 조작 함수 직접 구현

1. 문자열 길이 계산 (my_strlen) 널 종료 문자('\0')를 제외한 문자열의 유효 길이 반환 #include <assert.h> size_t my_strlen(const char* str_ptr) { assert(str_ptr); const char* ptr = str_ptr; while (*ptr) ptr++; return ptr - str_ptr; } 2. 문자열 복사 (my_strcpy) 소스 문자열 전체를 대상 버퍼에 복사(널 문자 포함) char* my_strc ...

6월 24일 22:54에 게시됨

JVM의 핵심 원리 이해: 코드 중심의 설명

Java의 플랫폼 독립성은 JVM의 강력한 설계에서 비롯됩니다. 이 문서에서는 클래스 로딩, 메모리 관리, GC 메커니즘 등 핵심 원리를 코드 예제와 함께 살펴봅니다. 클래스 로딩 메커니즘: 바이트코드에서 Class 객체까지 클래스 로딩 세 단계 로딩: 바이트코드를 찾아 Class 객체 생성 링킹: 검증 → 준비 → 해석 초기화: 정적 코드 블록 실행 및 변수 초기화 사용자 정의 ...

6월 23일 21:35에 게시됨

C 언어 기초부터 응용까지: 핵심 개념 정리

컴퓨터 하드웨어 구성 요소 간 관계 이해 운영체제는 하드디스크에 저장된 데이터를 메모리로 불러와 처리합니다. 이후 CPU가 메모리 내 데이터를 계산하고, 결과는 그래픽카드를 통해 화면 출력되며, 모든 장치는 마더보드를 통해 연결됩니다. Hello World 프로그램 실행 과정 소스 코드는 컴파일러에 의해 실행 파일(.exe)로 변환됩니다. 사용자가 실행하면 운영체제가 ...

6월 9일 21:07에 게시됨

안드로이드 이미지 로딩 프레임워크 Universal-Image-Loader 완전 분석 (기본 소개 및 사용법)

안드로이드 애플리케이션 개발 시 비동기 이미지 로딩 또는 대량 이미지 로딩을 다루는 것은 흔한 작업입니다. 이미지 로딩 과정에서 이미지 순서 혼란이나 OOM(메모리 부족) 문제와 같은 다양한 문제점에 직면할 수 있습니다. 이러한 문제점을 해결하기 위해 많은 오픈소스 이미지 로딩 프레임워크가 등장했으며, 그중 Universal-Image-Loader는 매우 강력한 기능을 제공 ...

5월 24일 08:13에 게시됨

VC++에서 함수처럼 사용 가능한 입력 다이얼로그 구현

헤더 파일에 포함할 수 있으며 리소스 파일이 필요하지 않습니다. 프로그램 내에서 언제나 서브루틴처럼 호출할 수 있습니다. 실행 효과는 다음과 같습니다: 관련 프로그램: 다이얼로그 호출: 호출 시 입력 다이얼로그의 프롬프트와 기본 문자열을 전달하고 입력된 문자열 포인터를 반환합니다. 사용이 끝나면 메모리를 해제해야 합니다. 문자열 길이가 가변적이므로 함수 ...

5월 22일 00:24에 게시됨