如何将小写字符转换为大写?

时间:2010-08-25 15:32:38

标签: iphone objective-c cocoa

unichar c;

c = [myString characterAtIndex:0];

unichar catchcar = [c lowercaseString];

错误:无效的接收器类型unicar。

我知道lowercaseString用来隐藏String而不是字符。有没有解决方案?

3 个答案:

答案 0 :(得分:8)

您可以执行以下操作:

unichar catchcar = [[myString lowercaseString] characterAtIndex: 0];

如果您只有一个角色,请执行以下操作:

// given unichar c

unichar catchcar = [[[NSString stringWithCharacters:&c length:1] lowercaseString] characterAtIndex: 0];

答案 1 :(得分:2)

在单个字符上转换大小写的最简单的解决方案是使用C函数tolowertoupper。使用问题和重写中的代码示例,可以将其转换为小写:

#import <ctype.h>

unichar catchcar = tolower([myString characterAtIndex:0]);

无需使用NSString API做任何复杂的事情。并且不需要先将整个字符串设为小写。

希望这有帮助,

埃里克

答案 2 :(得分:1)

unichar c = [[myString lowercaseString] characterAtIndex:0];

试试这个。