我明白unsigned char *
和char *
类型之间的差异。我也知道如何使用的reinterpret_cast投的unsigned char *
到char *
在C++。定义为从无符号字符*投的行为为char *在Objective-C
我使用的Objective-C的sqlite3的,我试图从呼叫得到NSString
到
sqlite3_column_text(...);
要做到这一点,我基本上做的:
char *cParam = (char *)sqlite3_column_text(compiledStatementPtr, 0);
NSString *aParam = nil;
if (cParam) {
aParam = [NSString stringWithUTF8String:cParam];
}
sqlite3_column_text()
,然而,返回unsigned char *
,我很担心投给char *
行为。我读过,中投是具体的实行,我想知道这是否是在Objective-C,或者如果我完全找错了树一个安全的投?
BTW reinterpret_cast似乎不可用于ObjC,除非它在我不知道的头文件中 - 这是可能的。 – jcb 2009-08-05 19:46:25
'reinterpret_cast'是Objective-C中不可用的C++操作符。 – notnoop 2009-08-05 20:06:55