- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:NSUserDefaultsに構造体を保存する方法)
NSUserDefaultsに構造体を保存する方法
このQ&Aのポイント
- NSUserDefaultsで構造体を保存する方法を教えてください
- コードの実行後に文字列のchar型を保存し出力する方法を教えてください
- int型のデータは保存できるがchar型のデータは保存できない
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
> 文字列のchar型は出力できませんでした。 C言語のポインタでつまづいているの図、です。 文字列の型はcharではなく、char *型です。つまりポインタですから、そのままでは文字列本体でなく、アドレスのみNSUserDefaultsに保存されることになるでしょう。 NSValueクラスに、ポインタ参照のオブジェクトをラップするメソッドがあったように記憶しています。が、文字列はNSStringクラスのインスタンスにして、NSUserDefaultsに保存するのが、まあふつうの処理だと思います。 NSUserDefaults Class Referenceより: stringForKey: Returns the string associated with the specified key. - (NSString *)stringForKey:(NSString *)defaultName Parameters defaultName A key in the current user's defaults database. Return Value For string values, the string associated with the specified key. For number values, the string value of the number. Returns nil if the default does not exist or is not a string or number value.
お礼
>アドレスのみNSUserDefaultsに保存されることになるでしょう なるほど、道理でブロックコメントをコメントアウトしている時はアドレスを参照していたため正常に出力できていたんですね。 ありがとうございました。