• ベストアンサー

戻り値について

関数からの戻り値が返されてるにもかかわらず、その戻り値を呼び出し側で受け取らないことは問題ですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • galluda
  • ベストアンサー率35% (440/1242)
回答No.4

がると申します。 もし「お仕事で」なさっているのであれば。 関数にもよりますが、原則「問題あり」だと思います。 void returnのものもあり、return値がほとんど意味を成さないものもありますが。そっちを「例外」と捉えたほうが、ミスエラーバグの類は減ると思います。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

回答No.5

#3です。質問を読み間違えました。 問題ないです。m(_ _)m

全文を見る
すると、全ての回答が全文表示されます。
回答No.3

>関数からの戻り値が返されてるにもかかわらず、 そういいきれる訳は?普通に考えるとこの言葉自体矛盾です。 (戻しているつもりとか) >その戻り値を呼び出し側で受け取らないことは問題ですか? コンパイルチェックをしっかりかけてあるなら問題です。スタックを壊しているかも。

全文を見る
すると、全ての回答が全文表示されます。
  • edomin
  • ベストアンサー率32% (327/1003)
回答No.2

問題有りません。 たとえば、「printf」関数。 この関数も戻り値はありますが、利用している人はほとんど居ないでしょう。でも、誰も気にしていません。使いたい人は使えばいいだけです。ただし、自作の関数で、どこでも戻り値を必要としないなら、voidでもいいと思います。 http://www.bohyoh.com/CandCPP/C/Library/printf.html

参考URL:
http://www.bohyoh.com/CandCPP/C/Library/printf.html
全文を見る
すると、全ての回答が全文表示されます。
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

「エラーが発生したかどうかを返り値で知らせる仕様になっていたとえしても認識できない」ということ以外は全く問題ありません. もっというと, strcpy や strcat などでは全然返り値を使わないことも多いです.

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • main関数の戻り値について

    c言語において、main関数の戻り値は何を意味しているのですか。 また、void型にすれば、main関数の戻り値を書かなくても問題無いでしょうか。 また、関数はreturn文を書かなくても、最後まで処理を実行すると終了するらしいですが、void型にすれば、main関数でreturn文を書かなくても問題無いでしょうか。

  • 戻り値

    今C言語の勉強を始めたのですが、戻り値の概念がどうしても わかりません。返すなどの語句とごっちゃになってしまいます。 int read (int fhandle, void *buffer, unsigned int count); ちなみに上のread関数の場合の戻り値は何になるのでしょうか? 関数を調べても、上の表の見方が全く分からず困っています。 よろしくお願いします。

  • 戻り値と引数

    戻り値と引数の概念がよくわかりません。 質問内容は2つ (1)「戻り値は値を関数元に返す」 とありますが 返すとどうなるのですか? また返さないとどうなるのかを教えて下さい。 (2)引数に関しては眺めていればこの引数が値を渡してるというのは なんとなくわかるのですが、実際のプログラムを組んで関数を作成するときに何を引数にすればいいのかさっぱりです。それを教えて下さい。

  • C言語 関数の戻り値と自動変数

    かなり基礎的な質問になるのですが、疑問に思うことがあり、質問をさせていただきます。 関数内で宣言した変数を戻り値として使う場合ですが、ポインタなどではなく実体の場合でも、静的変数として宣言をしたほうが良いのでしょうか? 現実的に考えると、プログラムが関数から出て、呼び出した側の関数が戻り値を受け取るまでの瞬間に、その領域が書き換えられる可能性は極めて低いと思うのですけど、C言語の仕様としてはどうなのでしょうか? 関数内で宣言した戻り値に使う変数には、必ずstaticをつけた方が良いのでしょうか? もしおわかりでしたら教えて下さい。

  • 関数から戻り値を得る方法について

    知り合いの方から関数の戻り値をえるときにreturn以外に例えば File(&i,&k);←関数呼び出し int File(int **j, double *k)←関数 {      ~      ~ } とやると(double *k)は関数からの出力として、呼び出しているFile(&i,&k)の(&k)に返されると聞きました。しかも、戻り値はint File()のintに依存しないと言われて試してみたのですが、どうもうまくいきません。 正しいやり方知っている方いましたら、教えて下さい。あと複数戻り値を返したいときはどうすればいいんでしょうか?

  • C#で配列の戻り値について

    プログラミング初心者で、ただいまC#の勉強中です。 bool型(trueまたはfalse)とstring型(関数内で取得した文字列)の値を 配列で関数の戻り値として返したいのですが、どうすれば良いのかわかりません。 true/falseもstringとして呼び出し側で判別するしか方法はないのでしょうか。 アドバイスをお願いいたします。

  • 戻り値がない時はゼロを表示したい。

    WINXP+ACCESS2000です。 EXCELだと、VLOOKUP関数などで戻り値がない場合、IF関数とISNAや ISERROR関数を使ってN/Aなどを表示させない方法がありますが、ACCESS の場合、DLOOKUP関数で戻り値がなかった時にゼロを表示させるには どの様な方法があるのでしょうか? お分かりになる方がおられましたら、お知恵をおかし下さい。 宜しくお願いします。

  • recvfrom関数の戻り値について

    初めて質問させて頂きます。 現在、LinuxのUnixドメインを使用した内部通信プログラムを 作成しているのですが、recvfrom関数の戻り値で-512という値が 返ってきて頭を悩ませています。 いろいろなHP等でrecvfrom関数の戻り値について記述されている内容は 受信サイズか-1となっているのですが・・・-512という値については さっぱりでした。 -1の場合は、errnoが入るようなのですが、-512の場合、errnoが0のままで何もはいっていないように見えます。 どの様な問題が発生しているかの見当もつかない状態です。 すみませんが、宜しくお願い致します。

  • 戻り値と返り値の違い

    タイトルの通りの質問内容です。 僕が調べた限りは「同じ」と言う意見が多数でした。 中には ・参照渡しした引数の関数通過後の結果が戻り値、  関数自体が返すのが返り値 とか ・引数なしの関数で戻るのが戻り値、引数ありの関数で  戻るのが返り値 とかはたまたその逆とか、混沌としています。 気になります。

  • C言語 関数の戻り値について

    C言語で関数を作る場合に最後にreturnで戻り値を設定しますよね? 自分はあまりそれがわかりません。 関数で出た答えを返すって言うのはわかるんですが、 returnが無くても大丈夫だったりreturnはあってもその後に戻り値を設定していなかったり。 何故returnがなくても動作するのでしょうか? 何故returnまであるのに戻り値は設定されていないのか? 教えてください。