かなり長いIntを処理する必要があります。 Int64(String)
は64ビットデバイスで正常に動作しますが、32ビットデバイスでクラッシュすることがあります。これの理由は何ですか?ここで文字列をInt64にキャストすると32ビットデバイスでクラッシュする
コードです:
let predicateBarcode = NSPredicate(format: "barcode = %ld", Int64(searchTerm)!)
私は検索語については何も言うことができない、それはバーコードスキャナから来ているとEAN-13です。これは私のコモマーにとってただ起こっているので、私はクラッシュを再現することもできません。
「Int64」は、32ビットプラットフォームと64ビットプラットフォームの両方で64ビット符号付き整数を表します。だから、通常、私たちはそのような振る舞いを見ることができません。問題を再現するために、より多くのコンテキストを表示できますか? – OOPer
コードとクラッシュの詳細を示してください。 – Paulw11
これは本当にあなたが使用している正確なコードですか?あなたのコードはXcode 8.3でコンパイルされません。たとえあなたが無関係だと思っても、何も省略しないでください。クラッシュ時に 'searchTerm'の値を表示します。とにかく、あなたのコードは64ビットプラットフォームでも有効なコードではありません。 – OOPer