• ベストアンサー

VBで困っています

imogasiの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

「戻り値」は「関数」の戻り値のことを言っておられると思います。 ある本によると、「ある値を与えるとそれを基に計算などの処理をして結果を返す機能」とあります。add(a,b)というa,bを与えてその和を計算させる関数(サブルーチン)を定義(プログラムを作ったと)すると、c=add(a,b)とメインルーチンにかくと、cにはa+bの結果が入るのはご存知でしょう。 イメージとしてはaddという自動製造機にaとbとの材料を投げ込むとcが放出口からポロリとかえってくるイメージでしょうか。それで「戻す」となり、「戻り値」となるのでしょうか。あるいはReturnValueのReturnの第一訳の「行って戻る」から来るのかもしれません。サブルーチンには値を戻さないで、状態をセットするなどの処理だけするものもあるのですが、C言語では、値を戻すほうを本則と考えて、戻さないものをわざわざ「Void」としたりするルールにしている。メインルーチンからサブルーチンに飛んで、終わるとメインルーチンの飛び出した次ぎの行へ「戻って」くるから、Returnなのだと思います。 関数とサブルーチンやクラスの違いは今後私も気をつけて勉強します。

urazoe
質問者

お礼

ありがとうございます!  かなりわかりました m(__)m

関連するQ&A

  • VB初心者の私に教えてください!

    最近VBを始めたんですけど、関数 定数 変数 引数 の意味がよく理解できません・・・。値を返すとか戻り値とか、あとプロシージャを作るってどういうことですか?なにかにたとえて教えてくれればうれしいです! お願いします(^。^)

  • VB6のWScript.Shellについて

    VB6のWScript.Shellで、他のVB6プログラムを起動する時の戻り値について教えてください。 AというVBプログラムからBというVBプログラムを起動するシステムがあります。 Bというプログラムで取得した値をAに返す方法はありますでしょうか? Aのソースは以下の通りです。 --------------------------------------------- sub test() dim objWshShell set objWshShell = Wscript.CreateObject("WScript.Shell") objWshShell.Run "C:\B.exe" & " " & hikisu1 & " " & hikisu2 , 1, wait End Function ---------------------------------------------- objWshShell.Runの戻り値はtrueまたはfalseのみのようです。 B.exeからtrue、false以外の値を取得する方法はありますか? また、やり方はobjWshShell.Runでなくてもよいです。 よろしくお願いします。

  • VB 関数

    初めまして。 VB初心者なので,簡単な質問なのかしれませんが御願いします。 C言語で,   int      main        (void) 戻り値の型    関数名      戻り値なし と書きますが,これと同じ意味を持つプログラムをVBで書くとどのようになりますか? 関数の作り方がまだわかってないので教えていただけますか? 宜しく御願いします。 

  • VB6でのgethostbyaddrの使用方法について

    IPアドレスからホスト名(コンピュータ名)を取得するため gethostbyaddrを使用したいのですがうまくいきません。 (動くのですが戻り値が常に0となります。名前解決はできています。また、gethostbynameは正常に動きました。) すみませんが教えてください。 HOSTENT = gethostbyaddr(addr,inglen,ingtype) 上記のaddr、inglen、ingtypにはどのような値を入れればよいので しょうか? addrはgethostbynameで取得した値(102379333)を入れるのでしょうか? それとも「10.10.999.999」のような値を入れるのでしょうか? 環境は以下の通りです。 OS:Windows XP またはWindows2003 server 言語:VB6 使用関数はgethostbyaddrを使用しないといけません。 調べたところいろいろありましたが 具体的なコーディングがありませんでした。 お手数ですがよろしくお願いします。

  • VB.Net TableAdapterで登録してい

    お世話になります。 VB.Net 駆け出しの者です TableAdapter に登録してあるストアドプロシジャーをよく実行しますが、 Dim Ret Integer Ret = Me.問題のTableAdapter.問題の関数(引数) こんな感じで実行しますが、実行後の戻り値は1か0の 反映した件数?!が帰ってきると思われるのですが、ストアド内のReTurn で返している値を取得するにはどうしたらよいのでしょうか? 例えば、ストアドプロシジャーの最後の部分で、下記のようにオートナンバーのキーを取得したい場合、ReturnValue の値を取得したいことってあると思うのですが、こういう場合、TableAdapter.関数の記述でReturnValue の値を取得するためにはどのような記述をすればいいのでしょうか? 何卒よろしくお願いいたします。 SET @Ret = @@IDENTITY COMMIT TRANSACTION RETURN @Ret END TRY BEGIN CATCH ROLLBACK TRANSACTION RETURN 0 END CATCH

  • サイコロの目を出す計算について疑問

    よろしくお願いします。 VB6.0でサイコロの目1-6を出す計算式として、 Int(Rnd() * 6) + 1 というものをよく見かけますが、これだと均等に1-6が出現しないような気がします。 Rnd()は0-1の値を返して、その値は全くランダムに返されるのだから、 戻り値が0<=かつ<0.1の場合はサイコロの目は1となり 0.1<=かつ<0.2ならサイコロの目は1となり 戻り値が0.2<=かつ<0.3なら目は2 0.3<=かつ<0.4なら2 戻り値が0.4<=かつ<0.5なら目は3 それなら次の、戻り値が0.5<=かつ<0.6なら目は3かと思えば、そうでなく4になってしまいます。 以下、 戻り値0.6台なら目は4 戻り値0.7台なら目は5 戻り値0.8台なら目は5 戻り値0.9台なら目は6 となり、これではぜんぜん均等にばらけないではないか?と思ったのですが、 実際に100000回計算させてそれぞれの出現回数を調べるとほぼ均等にばらけて いるように見えます。 一体どうしてなのでしょうか?

  • 戻り値と引数

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

  • 戻り値の意味がわかりません…

    戻り値とはどういう値なのか簡単な例文で教えて頂けますか?

    • ベストアンサー
    • Perl
  • CImage::Loadの戻り値は何でしょうか

    CImage::Loadの戻り値は何でしょうか VC++のCImage::Loadの戻り値は何を表しているのでしょうか。 MSDNをみても「標準の HRESULT を返します。」とあるだけで、 具体的な値がわかりません。

  • Java戻り値について

    Javaの戻り値がいまいちよくわかりません。 引数については理解できているのですが、戻り値の「値が戻る?」という表現がよくわからないのです。 もっと言うと、引数との違いがこれまたよくわかりません。 先輩方、お暇な時にでも教えてください。 宜しくお願いします。

    • ベストアンサー
    • Java