- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Return で文字列が返せない、、)
Return で文字列が返せない、なぜ返せないのでしょうか。
このQ&Aのポイント
- Return で文字列が返せない理由を解説します。
- 関数内でのファイル操作による制約が原因で、文字列を返すことができません。
- ファイルの読み書きには別の方法を利用する必要があります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
関数間での文字列の受け渡しはできませんので、ポインタを使用するかグローバル変数での受け渡しになります。 str buff(100); main{ try; } とか main{ srt buff(100); buff = try; } みたいな形になると思いますよ。
その他の回答 (2)
- Picosoft
- ベストアンサー率70% (274/391)
回答No.3
あと蛇足ですが、 > 文法がダメだとコンパイラに怒られます。 エラーメッセージを見れば問題箇所の特定が劇的に容易になります。 質問する際はエラーメッセージを必ず記載するようにしましょう。
質問者
お礼
そうしたかったのですが、、、コンパイルする以前に、「×と電球」が出てしまっていて、コンパイル時のエラー文も出ていない状態でした。 こういう場合、どうやってエラー文を出したらいいのでしょうか。
- Picosoft
- ベストアンサー率70% (274/391)
回答No.2
値を返さないコードパスがありますね。 2つめのtry~catchで例外が発生したときの戻り値がありません。
質問者
お礼
ありがとうございます。 main関数に直書きで対処いたします。
お礼
なるほど、、、関数間での文字列の受け渡しができない(!?)ことがわかっただけでもありがたいです。 main関数の中でかっこつけないでやっていきます。 ありがとうございます!!!