- ベストアンサー
プログラムについて
プログラムを勉強していてわからないことが3つあります。 1ソースプログラムを編集し、次にコンパイルしてオブジェクト プログラムを作成し、さらに関数を引用した場合などには他の オブジェクトプログラムと結合し、最終的に実行形式の プログラムを得て実行します。 と教科書に書いてあるのですが、関数を引用した場合などには他のオブジェクトプログラムと結合するとはどういうことですか? 2メモリを多く費やせば処理は速くなり、処理速度を犠牲にすればメモリを節約できるとありますがなぜこうなるのですか? メモリを節約するとどんなメリットがありますか? 3プログラムの高速化では 必要な演算回数を少なくする。無駄な繰り返しを省く。 速い演算を多くし、遅い演算を少なくする。 とあるのですが具体的にどういうことですか? プログラム初心者です。 わかりやすく教えていただければ幸いです。 どうぞよろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- hilow1
- ベストアンサー率53% (7/13)
- toshi_2000
- ベストアンサー率30% (306/1002)
関連するQ&A
- 別々に作ったプログラムを繋げたい
C言語で2つのプログラムを作りました 1つは関数のみを記述したもの もう1つはその関数を定義だけし こっちをメインとして使いたいもの メインで関数を呼び出して実行したいのですが どのようにコンパイルすればいいのかわかりません コンパイル以外に何か特別な作業は必要でしょうか?
- ベストアンサー
- C・C++・C#
- コンパイラ、その周辺の質問
C言語を勉強していて、いまいちわからなかったことを、ないがしろにしていたのでここで質問させてください。 ・あるプログラムをコンパイルするとまず機械語に翻訳されオブジェクトファイルができ、リンクすることでライブラリに登録されている関数のオブジェクトファイルと結合させ1つの実行ファイルを作るのですよね?(ここまでまちがいない?) 例えばprintf()を使ったときコンパイラはどのようにしてそのprintf()のオブジェクトファイルを探しているのかよくわかりません。ライブラリ(.lib)の働きも良くわかっていません。 VC++を使っておりますが、自作の関数をライブラリに登録する方法もできれば教えていただきたいです。 よろしくお願いします。
- ベストアンサー
- C・C++・C#
- 良いプログラムとは?
はじめまして 自分はC++の基礎(入門的な)部分 構造体、ポインタ、関数、ファイル入力は 理解したのですが良いプログラム (処理時間、容量の短縮、見やすいプログラムなど) が分からないので (分かることがあるとすれば演算子の処理を少なく するとかポインタを使うとか・・^^;) こんな初心者にできれば具体的な 良いプログラムの基本的な書き方を 教えてください・・ 宜しくお願いします。
- 締切済み
- C・C++・C#
- JavaScriptの関数オブジェクト
JavaScriptの匿名関数から関数オブジェクトが作られるのはいつでしょうか。 ※ブラウザの実装によるかもしれませんが・・・ Callオブジェクトがその関数の実行時に毎回生成されるので、 処理コスト的に考えれば、関数オブジェクトはコンパイル時の1回だけで済むはずですよね? 関数コード自体はどんな呼び方しても共通なはずですから、 単に実行時に適切なCallオブジェクトをくっつけてあげるだけでいいはず・・・ (Functionコンストラクタ使うなら別でしょうけど) でも、クロージャについて「その都度、関数オブジェクトが生成されるのでメモリ効率が悪い」 という意見を割とあちこちのブログとかで見ます。 Callオブジェクトにでかいローカル変数が含まれると無駄、ってのなら分かるんですが。 このあたり、ECMAScriptの仕様では決められていない部分なのでしょうか。
- ベストアンサー
- JavaScript
- JAVA 別のプログラムを操作する
JAVA初心者です。 JAVAで、例えばsample1.classを実行すると、 sample2.javaがコンパイルされる・・・。 というような、実行すると他のプログラムをコンパイル するようなプログラムはどのように書けば良いでしょうか?? ご教授お願いいたします。
- 締切済み
- Java
- コンパイルしたプログラムが終了しないのですが
VB6.0で教えてください。 コンパイルしてできたプログラムを実行し、フォームの右上にあるコントロールボックスから閉じると、フォームは非表示になるものの、プログラム自体がメモリに残っているようです。 完全に消すには何かコードを追加する必要があるのでしょうか?
- ベストアンサー
- Visual Basic
- 関数を使ったプログラムについてなのですが・・・
・変数a,bの内容を入れ換える処理を関数を用いて実行するためのプログラム と ・変数a,bを与えたときa+bとa-bを計算する処理を関数を用いて行い、和と差を表示させるためのプログラム はどう作ればいいか分かりません…。 教えてください。
- ベストアンサー
- C・C++・C#
- Borland C++ Builderで簡単なC言語プログラムの作成・実行
Borland C++ Builderで簡単なCのプログラムを作り実行させるにはどうしたらよいですか? DOS窓上でコンパイルするのではなく、Borland C++ Builderのメニューから行いたいのです。 一応、「ファイル→新規作成→その他→Cファイル」でCのファイルは作成できるのですが、このファイルを「プロジェクト→ユニットのコンパイル」でコンパイルすることができません。 Formオブジェクト(?)を作成しておくとコンパイルできます。 Formは特に必要ないので、FormなしでCのファイルだけをコンパイルしたいのです。 DOS窓でのコンパイル・実行はできます。 事情があってBorland C++ Builderを使わなくてはなりませんので、他のIDEはこの際全く解決になりません。 よろしくお願いします。
- ベストアンサー
- C・C++・C#
- dosプログラムのショートカットが作れません
Win7(64ビット版) で昔作成したdosプログラムを実行したいのですが、うまく実行できません。 XPモードはインストールしてありません。 検索したところ、ショートカットを作成し、[別メモリ領域で実行する] チェック ボックスをオンにすればよいとの記事を見つけました。 http://technet.microsoft.com/ja-jp/windows/gg410655 そこで、ショートカットを作成しようとしたところでつまづいています。 ショートカットの作成方法 あるいは、DOSプログラムの実行方法をお教えください。 質問が前後しますが、XPモードをインストールしないとDOSプログラムの実行は無理なのでしょうか? なお実行したいDOSプログラムは、標準入力のデータを処理して標準出力に出す、いわゆるフィルタープログラムです。 100行程度のプログラムなので、最悪、Win7環境で再コンパイルして、Win7用のプログラムを作って対応しますが、可能ならDOSプログラムをそのまま使いたいと思っています。
- ベストアンサー
- Windows 7
- 2つのプログラムを結合するテクニックについて
2つのプログラムがあり、別々に動作しているものがありますが、これらを結合して別の1つのプログラムをつくることを考えています。結合のイメージは例えば、2つのプログラムが海の計算と大気の計算であり、それらを結合して海洋・大気計算プログラムとする、というようなものです。2つの計算は海面を通じて接していることになります。海面が両計算の共通部分となります。また、それ以外に円周率とか重力加速度とかネイピア数といったユニバーサルな定数も共通になるはずです。 このようなものを作成する場合、メモリ管理(モジュール)としてどのように作りこんでいくことになるでしょうか。海モジュール、陸モジュール、共通モジュールの3モジュールにするということなのでしょうか。つまり、海は海・共通モジュールで計算し、大気は大気・共通モジュールにするとかです。他に共通部分をグローバル変数として認識させるとか、あるいは副プログラム(関数かサブルーチン)の引数として表に出すとか方法はありそうですが、1つの数字ではなく、ある程度大量の配列変数になるはずです。 そのあたりのメモリの管理の考え方についてテクニックを教えて頂きたいのですが。また、海、大気それぞれがとりあえずちゃんと走っている場合、結合する編集部分を最低限(ミスも最低限になる)にするテクニックがあると助かります。 実際はFortran95系でコードにしますが、C系での考え方を参考にできると思っています。よろしくお願いします。
- 締切済み
- C・C++・C#
お礼
とてもわかりやすいご回答ありがとうございます。 プログラムについてよく理解できました。