3
有人能告訴我什麼是將NSString *轉換爲ANTLR3字符串(在C中使用)的正確方法?如何將NSString *轉換爲ANTLR3_UINT8或ANTLR3_UINT16
編輯:這似乎工作
char buf[255];
if (YES == [myNSString getCString:buf maxLength:255 encoding:NSStringEncodingConversionAllowLossy])
{
pANTLR3_UINT8 theExpression = (pANTLR3_UINT8*)buf;
...
這樣做是強制轉換爲ASCII。 'encoding:'參數需要一個字符串編碼值(指定要使用的字符集),但是您傳遞的值(NSStringEncodingConversionAllowLossy)是一個「編碼轉換選項」。 「NSStringEncodingConversionAllowLossy」的值爲1,等於「NSASCIIStringEncoding」,即「在8位字符內嚴格的7位ASCII編碼;僅限ASCII值0 ... 127」。 – 2010-04-23 04:33:39
謝謝,是的,我知道我正在進行轉換,但至今我還沒有找到任何更好的方法,是嗎? – 2010-04-23 04:56:36