태그: 포인터

Swift, 스터디

Pointers in swift

C-API 사용하기 Objective-C와의 호환 기능 덕분에 Swift에서는 C 언어의 타입이나 기능들을 사용할 수 있게 되었다. 원시타입들 int, bool, short, char… 등의 C 원시타입은 CInt, CBool과 같이 접두어 C가 붙는 Swift 타입과 대응된다. 이는 라이브러리 임포트시에 자동으로 맵핑이 적용되게 된다. enum 타입 C의 enum 타입은 Swift의 enum 타입으로 변경된다. 특히 NS_ENUM 매크로를 통해 정의된 열거값들은, NS_ENUM …

C

[C/C++] 한 편으로 요약하는 포인터

한편으로 요약하는 포인터 C의 포인터는 사실 단순히 ‘메모리상의 주소를 저장하는 변수’의 개념인데, 실제로는 상당히 어렵다고 느끼는 경우가 많다. 왜냐면 메모리 주소를 사용하는 방식은 단순히 ‘간접적’으로 변수 값을 참조하는 것이라 “과연 이걸 어디다, 왜 쓴단 말인가”라고 생각해버리기 쉽기 때문에 실제로 어떻게 써야 하는지에 대한 감을 잡기 힘들기 때문이다. 이 글에서는 몇 개의 예제를 살펴보고 이를 통해 …

21세기소년, C, 스터디

[C] 함수로 전달된 포인터

포인터를 함수의 인자로 받는 경우, 함수내에서 원본을 변경하는가. 내용이 너무 두서 없어서 포스트 전체를 수정합니다. 처음 의문이 든 부분은, 문자열을 가리키는 포인터를 함수로 넘겨주고 문자열을 변형하면 포인터의 값이 변하는가?라는것이었는데. 이는 사실 그리 어려운 문제가 아니다. 포인터는 메모리의 주소를 가리키는 타입의 변수이고 이는 사실 unsigned int 나 unsinged int64 등의 정수형과 비슷하게 숫자를(메모리 번지도 결국 숫자값이므로) …