string s = "LEO"; 사실 c에는 string이라는 자료형이 없다. 그 간 string이라는 자료형은 만들어진 것이며, 이를 사용하기 위해 라이브러리에서 불러온다는 것은 알고 있었다. 그렇다면 string 자료형은 내부적으로 어떻게 구현이 되어있는 것일까? 전에도 언급했듯이 string은 단지 char의 배열이다. 내부적으로 보면 메모리에 L, E, O, \0(널 종단문자) 순서대로 저장되어있을 것이다. 그러면 변수 s는 어떤 값을 저장하고 있는 것인가? 변수 s는 char 배열의 가장 첫 번째 글자인 L이 위치한 메모리 주소를 값으로 갖고 있다. 즉, s는 포인터 변수이다. s는 char 배열의 첫 번째 글자의 주소만 알고 있고, 그 주소에서부터 시작해서 널 종단 문자가 나올 때까지 loop..
16진수 16진수는 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F 로 숫자를 나타낸다. 0에서 9까지는 10진수와 값이 동일하고, A는 10, B는 11, C는 12, D는 13, E는 14, F는 15를 나타낸다. 즉 16진수에서는 한자리 수로 0에서부터 15까지 표현할 수 있다. 그런데 위에서 보다시피, 0에서부터 9까지는 10진수와 동일한 값이라서 10진수와 헷갈릴 우려가 있다. 그래서 16진수에서는 모든 수 앞에 0x 를 붙인다. 이건 아무런 의미가 없고 그냥 16진수라는 뜻으로 붙인다. 예를 들어 16진수의 0은 0x0 으로 표기한다. 그렇다면 이해를 돕기 위해 2진수를 16진수로 바꾸어보자. 8비트가 나타낼 수 있는 가장 큰 수는 255이다. 2진수로는 1..
- Total
- Today
- Yesterday
- oracle
- getter
- Redux
- jQuery
- rxjs
- youtube data api
- Data Structure
- SQL
- GIT
- 개발 공부
- Java
- react
- c언어
- Session
- Prefix Sums
- Conflict
- JavaScript
- 자바
- 리덕스
- this
- 깃
- useEffect
- 인스턴스
- til
- 포인터 변수
- package.json
- CSS
- 알고리즘
- linkedlist
- 제네릭스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |