Instance Method インスタンスメソッド

cStringUsingEncoding:

Returns a representation of the string as a C string using a given encoding. 文字列のある表現をC文字列としてある与えられた符号化を使って返します。

Declaration 宣言

- (const char *)cStringUsingEncoding:(NSStringEncoding)encoding;

Parameters パラメータ

encoding

The encoding for the returned C string. For possible values, see NSStringEncoding. 返されるC文字列に対する符号化。可能な値として、NSStringEncodingを見てください。

Return Value 戻り値

A C string representation of the receiver using the encoding specified by encoding. Returns NULL if the receiver cannot be losslessly converted to encoding. レシーバのC文字列表現、encodingによって指定される符号化を使っています。NULLを返します、もしレシーバが無損失にencodingへと変換できないならば。

Discussion 議論

The returned C string is guaranteed to be valid only until either the receiver is freed, or until the current memory is emptied, whichever occurs first. You should copy the C string or use getCString:maxLength:encoding: if it needs to store the C string beyond this time. 返されるC文字列が有効であることを保証されるのは、レシーバが自由にされるまで、または現在のメモリが空にされるまでのどちらかのみです、どちらが最初に起こるとしても。あなたはC文字列をコピーするまたはgetCString:maxLength:encoding:を使うべきです、それがC文字列を格納する必要がこの時を越えてあるならば。

You can use canBeConvertedToEncoding: to check whether a string can be losslessly converted to encoding. If it can’t, you can use dataUsingEncoding:allowLossyConversion: to get a C-string representation using encoding, allowing some loss of information (note that the data returned by dataUsingEncoding:allowLossyConversion: is not a strict C-string since it does not have a NULL terminator). あなたは、canBeConvertedToEncoding:を使って、ある文字列が無損失でencodingへと変換可能かどうか確認できます。それが不可能ならば、あなたはdataUsingEncoding:allowLossyConversion:を使用して、C文字列表現をencodingを使って取得できます、何らかの情報の損失を許容して(注意すべきはdataUsingEncoding:allowLossyConversion:によって返されるデータはstrict C文字列でないことです、それがNULL終端子を持たないことから)。

Special Considerations 特別な注意事項

UTF-16 and UTF-32 are not considered to be C string encodings, and should not be used with this method—the results of passing NSUTF16StringEncoding, NSUTF32StringEncoding, or any of their variants are undefined. UTF-16とUTF-32は、C文字列符号化であることを考慮されません、そしてこのメソッドで使われるべきではありません — NSUTF16StringEncodingNSUTF32StringEncoding、または何らかのそれらの変種を渡すことの結果は未定義です。

See Also 参照

Getting C Strings C文字列を扱う

Related Documentation 関連文書