我在這個主題上搜索了一下,但是我找不到任何有用的東西。這是我很困惑的代碼:Typecast char as NSInteger
const char *beginning = "Love";
NSLog(@"%s", beginning); //Love
NSLog(@"%d", (NSInteger)beginning); //14687
(NSInteger)beginning
是什麼意思?爲什麼它輸出14687?
謝謝。
我在這個主題上搜索了一下,但是我找不到任何有用的東西。這是我很困惑的代碼:Typecast char as NSInteger
const char *beginning = "Love";
NSLog(@"%s", beginning); //Love
NSLog(@"%d", (NSInteger)beginning); //14687
(NSInteger)beginning
是什麼意思?爲什麼它輸出14687?
謝謝。
您不是將一個字符轉換爲NSInteger,而是將一個指向字符數組的指針轉換爲NSInteger。 該值是指向該字符數組的指針的值。
參見指針和數組此鏈接教程用C
該值是指向該字符數組的指針的「值」?那是什麼意思?你的意思是該值是指向該字符數組的指針的「存儲單元」? – yeesterbunny
指針是存儲單元地址的值。 - 是的!那種,你到達那裏。 –
aaah我明白了,好的,謝謝! – yeesterbunny
我不是真的想「做」任何事情。只是玩弄代碼haha – yeesterbunny