3

文字列の最初の文字を別の文字と一致させる方法を正確に調べようとしていますn。これが私が現時点で持っているいくつかのコードです:

CFStringRef myStringRef = CFSTR("hello");
CFStringRef otherStringRef = CFSTR("helloworld");

CFIndex cmpChars = CFStringGetLength(myStringRef);

CFComparisonResult res = CFStringCompareWithOptions(myStringRef, otherStringRef, CFRangeMake(0, cmpChars), kCFCompareCaseInsensitive);

printf("Res: %i\n", (int)res);

ドキュメントによると、「未満」を意味するresasの値を取得します。-1確かに、一致する範囲を指定したので、その範囲のみを考慮に入れる必要がありますか?

4

1 に答える 1

4

ドキュメントはより明確になる可能性がありますが、範囲は最初の文字列にのみ適用され、2番目の文字列には適用されません。 これが古いメーリングリストメッセージへのリンクです。 アーカイブからはわかりませんが、私の個人的なアーカイブからは、そう言ったのはAppleのエンジニアだったということです。

あなたがやりたいことをするために、あなたも使う必要があるかもしれませCFStringCreateWithSubstringん。

于 2012-12-17T18:44:21.600 に答える