奇思妙想 · 2024年 4月 18日 0

ObjC语言NSString *s = @"a我a" 字符串的长度是多少?

42 次浏览

首先要清楚,如果是GCC编译,默认源代码需要的UTF-8格式,NSString类型字符串s也是按UTF-8格式保存,即字符串s的raw data是61 e6 88 91 61. s的长度[s length]并不是5,而是3. NSString的length属性是按字符个数,而非字节个数,UTF-8中文是三个字节,只是一个字符。