[CS50] 메모리 - 포인터
TIL
메모리 주소를 직접 관리하는 것은 쉽지 않기 때문에, C에서는 포인터라는 개념을 통해 변수의 주소를 쉽게 저장하고 접근할 수 있다. 포인터에 대해 알아보자.포인터 변수* 연산자는 어떤 메모리 주소에 있는 값을 받아오게 해준다. 이 연산자를 이용해 포인터 역할을 하는 변수를 선언할 수 있다.#include int main(void){ int n = 50; int *p = &n; printf("%p\n", p); printf("%i\n", *p);}// 출력 예시// 0x7ffe00b3adbc// 50int n = 50; - 정수형 변수 n에 50 저장int *p = &n; - 포인터 변수 p에 변수 n의 주소 저장printf("%p\n", p); - 포인터 p의 값(변수 n의 주소) ..
[AI 감성 일기장] New 페이지 일기 작성 기능 구현
Dev Log
New 페이지에서 일기를 작성할 수 있는 기능을 구현했다.날짜 선택, 감정 선택, 일기 내용 입력이 가능하며, 날짜 포맷팅 유틸리티를 통해 일관된 날짜 형식을 유지한다.날짜 포맷팅 유틸리티formatWithZero 함수날짜를 두 자릿수로 일관되게 표시하기 위한 함수다.const formatWithZero = (number: number) => number 숫자가 10보다 작을 경우 앞에 0을 붙여 반환한다. getStringDate 함수날짜 데이터를 원하는 문자열 형식으로 변환하는 함수다.export const getStringDate = ( targetDate: Date | string | number, format: string = "yyyy-mm-dd") => { const dateObj =..
[CS50] 메모리 - 메모리 주소
TIL
메모리 주소C로 작성한 변수들은 실제로 컴퓨터 메모리에 어떻게 저장될까? 메모리 주소를 나타내는 방법과 그 주소를 알아내는 방법, 그 주소에 찾아가는 방법을 알아보자. 16진수컴퓨터 과학에서는 숫자를 10진수나 2진수 대신 16진수(Hexadecimal)로 표현하는 경우가 많다. 16진수를 사용하면 10진수보다 2진수를 나타내기가 더 편리하기 때문이다.10진수를 16진수로 바꾸기JPG 이미지 파일은 항상 255 216 255로 시작하는데, 이것은 10진수다. 하지만 컴퓨터는 0과 1만 이해할 수 있기 때문에 실제로는 10진수를 사용하지 않는다.16진수에서는 10부터 15까지를 a - f로 표현한다. 그리고 0x를 붙여 뒤에 오는 문자들이 16진수임을 알린다. 변환 예시:15: 0x0f16: 0x1017:..