我想做这样的事情:
const UniChar KA = 'か';
但XCode吐出“多字符常量”。
我尽量避免使用NSString的+ characterAtIndex ...我需要这个迭代假名,就像你可以迭代字母表(char myCharacter = 'A';
)
我在看Objective c doesn't like my unichars?,但它并没有真正为我解决它。
无论如何,我试图将“tenten”和/或“maru”放在か,た等之上,如か→が,た→だ。可能是一个现成的解决方案,如果有人知道,这也将解决我的问题。
答案 0 :(得分:6)
源代码通常编码为UTF-8,这意味着您不能在那里使用16位字符文字。您需要使用转义序列:
const UniChar KA = '\u30AB';
或以数字方式指定值:
const unichar KA = 0x30AB;
(注意:我真的不知道这是你给出的示例字符的正确代码。)
我认为您唯一的另一个选择是创建a .strings file,它可以并且应该是UTF-16编码,然后使用NSLocalizedString将字符放入您的程序。