

C/C++ でプログラムを作っていると、他の言語に比べてコンパイルされたプログラムのメモリサイズがコンパクトになることがよくあります。

コンパイラなどの仕様はあまり知らないのですが、Java
で同じコードを書いたときより、数十パーセントほどコンパクトなメモリ管理ができることもたまにあるのです。

なぜC/C++ では他の言語よりもコンパクトなメモリ管理ができるのでしょう？
他の言語では暗黙的にコードに記述されていない処理をプログラムに付加しているのでしょうか？


CC BY-SA 4.0
2021-02-04T00:24:25.937
73783
2021-02-05T00:44:46.197
2021-02-05T00:44:46.197
3060
43413
question
c++ c プログラミング言語
C/C++ のメモリサイズが他の言語よりコンパクトになるのはなぜですか？


ちなみにC++言語とC#言語でHello, Worldを書いてみました。普通にC言語やC++言語の方が大きいです。コンパクトになる例が知りたいです。

C言語 10,752bytes.

[code]

    #include <stdio.h>
    int main() {
        printf("Hello World!\n");
    }
    
[/code]

C++言語 11,776bytes.

[code]

    #include <iostream>
    int main() {
        std::cout << "Hello World!\n";
    }
    
[/code]

C#言語 4,608bytes.

[code]

    using System;
    namespace CsHelloWorld {
        class Program {
            static void Main(string[] args) {
                Console.WriteLine("Hello, World.");
            }
        }
    }
    
[/code]


CC BY-SA 4.0
2021-02-04T14:30:28.543
73801
2021-02-04T14:30:28.543
4236
73783
answer