2012-10-21 3 views
0

이 주제에 대해 조금 씩만 알아 보았지만 도움이되는 정보는 찾을 수 없었습니다.Typecast char as NSInteger

const char *beginning = "Love"; 
NSLog(@"%s", beginning); //Love 
NSLog(@"%d", (NSInteger)beginning); //14687 

(NSInteger)beginning은 무엇을 의미 하는가 : 여기에 대한 혼란 스러워요 코드인가? 왜 14687을 출력합니까?

감사합니다.

+0

C에서 포인터와 배열에 대한 튜토리얼이 링크를 참조하십시오. 코드를 가지고 노는 것 – yeesterbunny

답변

3

char를 NSInteger로 캐스팅하지 않으면 문자 배열에 대한 포인터를 NSInteger로 캐스팅합니다. 값은 해당 문자 배열에 대한 포인터 값입니다.

정말 아무것도 "할"것을 시도하고 있지 않다

http://pw1.netcom.com/~tjensen/ptr/pointers.htm

+0

값은 해당 문자 배열에 대한 포인터의 "값"입니까? 그게 무슨 뜻 이죠? 값이 해당 문자 배열에 대한 포인터의 "메모리 셀"이라는 것을 의미합니까? – yeesterbunny

+0

포인터는 메모리 위치의 주소 값입니다. - 예! 너의 도착. –

+0

아아아, 알았어, 알았어! – yeesterbunny