2017-09-15 2 views
0

私はCFDataRefを作成するのに10進数と16進数の文字列を使用しようとしましたが、私が必要なものを作成しませんでした。私は「<b1a3c3 d4b5>」などのCFDataRef必要、 はここに私のコードです:「<b1a3c3 d4b5>」のようにどのような種類のCFDataRefが印刷されますか?

CFDataRef abc = CFDataCreate(kCFAllocatorDefault, "b034958b0c6f",strlen("b034958b0c6f")); 
CFDataRef abc = CFDataCreate(kCFAllocatorDefault, "4294967295", strlen("4294967295")); 
+0

あなたは、https://stackoverflow.com/questions/7520615/how-to-convert-an-nsdata-into-an-nsstring-hex-stringを意味しますか?次に、CFDataRefとNSDataの間にブリッジがあるはずです – Larme

+0

何を求めていますか?何が問題ですか? –

+3

'CFDataCreate'の第2引数は、データに格納する生のバイトです。 16進文字列を渡すことはできません。 –

答えて

0

@kevinが正しい、あなたは生のバイトを渡す必要があります。

UInt8 bytes[] = { 0xb1, 0xa3, 0xc3, 0xd4, 0xb5 }; 
CFDataRef abc = CFDataCreate(kCFAllocatorDefault, bytes, sizeof(bytes)); 
+0

それは動作します、あなたとケビンありがとう! – 0x11901

関連する問題