C++/Syntax
2021. 3. 11. 16:54
문자열 (string)
text segment
#include <iostream>
int main()
{
using namespace std;
const char* name = "Jack jack";
const char* name2 = "Jack jack";
cout << (uintptr_t)name << endl;
cout << (uintptr_t)name2 << endl;
}
-
두 출력 결과는 같다.
-
메모리 영역 중
text segment
(=code segment
,text
) 에 저장된 데이터의 주소를 불러오는 것이다.
연산자 오버로딩
-
std::cout << (char *)
-
char *
형태의 주소가 오면 문자열로 인식한다. -
즉 null character(
'\0'
)가 등장할 때까지 출력한다. -
다음과 같은 예제에서는 주소가 나오지 않고
Q儆儆m8?
이런식으로 나온다.#include <iostream> int main() { using namespace std; char c = 'Q'; cout << &c << endl; }
-
'C++ > Syntax' 카테고리의 다른 글
C++ 레퍼런스 (Reference, 참조) (0) | 2021.03.12 |
---|---|
C++ Stack Size (0) | 2021.03.11 |
C++ nullptr_t (0) | 2021.03.11 |
C++ 배열 (Array) (0) | 2021.03.11 |
C++ 반복문 (0) | 2021.03.11 |