
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
私もサイズは気になる方なので、ご参考になれば。
bcc5 で printf() だけのソース 85 バイトをコンパイルすると
.exe は 52,224 バイトでした。
VD++6 で同じ .exe にすると、Release で 40,960 バイト、
Debug で、172,086 バイトでした。
bcc5 はちょっと大きめ程度ではないかと想像しました。
で、削減の方法は link map を取って見るのが確実と思いますが、
私の bcc5 では、統合開発環境風付きですが、link map を取る指定が分かりませんでした。
(make ファイルに記入できるとは思いますが、やっていません。)
#1 の方もお書きですが、link されるルーチンを減らすのがよいと思います。
できれば、stdio.h, string.h は一切使わない。
必要なら、winAPI を使って、自前で標準関数を用意する。モノによっては asm で。
大して得にはなりませんが、global 変数を多用すると生成コードがポインタ load で大きめになることがあります。
逆アセ可能なら、サイズの大きいルーチンを見ると
よいと思います。
global 構造体を参照する場合、一旦 local のポインタに
移して使うとかすると、register 命令に変わってサイズが
減ったりします。
No.1
- 回答日時:
Borland C++ Builder なら、プロジェクトオプションで
プログラムタブを開き、リリースを押すのか一番簡単ではないでしょうか?
行番号などのデバッグ情報を付加しない
共有ランタイムを使用する
コード最適化は、サイズ優先にする
関数のインライン展開を許可しない
等が考えられますが、必ず組み込まれる初期化ルーチンがあったり、関数1つだけ使っていてもその関数が含まれるライブラリ単位でのリンクになったりするので、あまり効果は無いかも。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# exeファイルが作れない(windows10) 6 2022/08/13 08:47
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 入力待ちをして、受け取った正の整数が表す行数だけ既存 4 2022/07/05 10:12
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- その他(プログラミング・Web制作) FORTRANの引数 5 2023/04/06 11:25
- その他(プログラミング・Web制作) FORTRAN77の配列(除算) 2 2023/02/01 14:34
- Windows 10 Windows11の実行モジュールはどこにある 1 2022/05/31 07:33
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- その他(プログラミング・Web制作) プログラミングについて(Python) 添付した画像はC言語で簡単に作ったソースで、1つの配列に5つ 3 2022/09/10 19:15
- C言語・C++・C# Cのコンパイルでコメントアウトをそのままオブジェクトに保持したい 7 2023/08/01 22:22
- HTML・CSS ホームページにブログ記事をサムネイル付きで掲載する方法 2 2022/11/25 14:55
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c++ , template , ファイル分割...
-
VBAを何回も作り直して、容量が...
-
「fatal error C1189」を回避す...
-
drand48()が使えない
-
VB6とInputManソフトの関係
-
windowsでLinuxで作成したソー...
-
gdbデバッグのためのmakefile作成
-
デコンパイル?について
-
アクセス2003 ファイルの...
-
PRO*C コンパイルエラー
-
ヘルプましんについて教えて下...
-
ILSpyで、デコンパイルできない。
-
C言語でmからnまでの合計を求め...
-
cc hello.cってやっても、、、
-
【VC++6.0(MFC)】警告「LINK : ...
-
ビルドから除外されたソースの...
-
” OS ビルド ” の意味が分か...
-
サンプルスケッチをそのまま使...
-
C++コンパイル時に『 C1083: in...
-
関数形式マクロ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAを何回も作り直して、容量が...
-
” OS ビルド ” の意味が分か...
-
「fatal error C1189」を回避す...
-
C言語でヘッダファイルにグロー...
-
エクセルVBAではRound...
-
Makefile作成時の拡張子.oとは?
-
ILSpyで、デコンパイルできない。
-
1 つ以上の複数回定義されてい...
-
マクロ コンパイルがグレーバック
-
セミコロンについて
-
外部シンボル "_main"は未解決です
-
C++コンパイル時に『 C1083: in...
-
ビルドとリビルドの違いを教え...
-
コンパイルエラー:ユーザ定義...
-
「DeclareステートメントにPtrS...
-
戻り値について
-
pyc 編集 閲覧
-
PRO*C コンパイルエラー
-
【VC++6.0(MFC)】警告「LINK : ...
-
漢字のコメントをはずすとコン...
おすすめ情報