2017-01-03 20 views
0
var OGM = [5449000131805,5449000050205,3174780000431,5449000053565...] 

私はvarのタイプIntに約3400の数字を格納します。Swift - Intの格納容量

リミットストレージはありますか? 私がアーカイブしようとすると、私はこのメッセージを持っている:

(Xcodeは)私はあなたが32ビットプラットフォーム用に構築している疑いがあるコマンドの出力パイプ(不正なファイルディスクリプタ)

+0

アーカイブしようとすると、そのコード行はエラーと何が関係しますか? – rmaddy

+0

わかりませんが、私がvar OGMを削除すると、アーカイブに問題はありません – Joys

+0

あなたが何を求めているのか不明です。最大255の意味は?なぜこのコード行はこのエラーに関連していると思いますか? 64ビットまたは32ビットのプラットフォーム(またはその両方)を構築していますか? (これらの数値は、32ビットプラットフォームではオーバーフローします)。 –

答えて

2

で読んエラーが発生しました。これらの数値は32ビットのIntよりも大きいので、コンパイルされず、実際に読んでいるエラーがその副作用かもしれません。

あなたは32ビットプラットフォーム上で64ビット整数を格納する必要がある場合、あなたはそのために依頼する必要があります。

var OGM: [Int64] = [5449000131805,5449000050205,3174780000431,5449000053565...] 

これはおそらく、特定のInt64注釈を必要とするために、コードの他の部分の原因となります。多くの場所で、Swiftはあなたのためにそれを処理しますが、場合によってはそうではありません。

+0

問題解決しました、ありがとう! – Joys

+0

私は64ビット版のみをビルドしますが、Xcodeはソリューションなしではそれを受け入れません。私は理解しませんでしたが、メッセージのエラーと私の間違いの間にリンクがありました! – Joys

関連する問題