C언어 Pointer
·
Interview/C
C언어 PointerC 언어에서 포인터(pointer)는 매우 중요한 개념으로, 메모리 주소를 가리키는 변수입니다. 포인터를 이용하면 동적 메모리 할당, 함수 매개변수 전달, 데이터 구조의 효율적인 관리 등이 가능합니다. 아래에서 포인터에 대해 좀 더 자세히 설명드릴게요.포인터는 데이터의 실제 값이 저장된 메모리 주소를 저장하는 변수로 이를 통해 메모리에 직접 접근할 수 있습니다.포인터는 *(dereference) 연산과 &(주소 연산)을 사용해 데이터를 간접적으로 참조하거나, 수정할 수 있습니다.C언어의 포인터1. 포인터의 기본 개념포인터는 변수의 주소를 저장하는 변수입니다. 일반적인 변수는 특정 타입의 데이터를 저장하지만, 포인터는 메모리 상의 주소를 저장합니다. C에서는 메모리 주소를 다루는 것이 ..
C언어 Shift 연산자
·
Interview/C
Shift 연산자https://jeongchul.tistory.com/730 Snowflake ID란 C, C++, Java, GolangSnowflake ID?Snowflake ID는 Twitter에서 개발한 분산 시스템을 위한 고유한 ID 생성 알고리즘입니다.이 방식은 빠르고 효율적으로 중복되지 않는 고유 ID를 대규모 시스템에서 생성할 수 있도록 설계되jeongchul.tistory.com위의 Snow Flake에서 Data center와 Node 그리고 Sequence의 최대 값을 지정하는 코드가 있습니다.MAX_DATA_CENTER_ID: 31MAX_NODE_ID: 31MAX_SEQ: 4095#define DATA_CENTER_BITS 5#define NODE_BITS 5#define SEQ_B..
C언어 Bit & 연산자
·
Interview/C
Bit & 연산자https://jeongchul.tistory.com/730 Snowflake ID란 C, C++, Java, GolangSnowflake ID?Snowflake ID는 Twitter에서 개발한 분산 시스템을 위한 고유한 ID 생성 알고리즘입니다.이 방식은 빠르고 효율적으로 중복되지 않는 고유 ID를 대규모 시스템에서 생성할 수 있도록 설계되jeongchul.tistory.com위의 Snow Flake에서 시퀀스의 최대 값을 4096(12비트)로 값을 0~4095로 고정하는 코드가 있습니다.uint64_t next_id(Snowflake *sf) { uint64_t timestamp = current_time_millis(); if (timestamp == sf->lastTim..
김 정출
'Interview/C' 카테고리의 글 목록