doucuyu2259 2015-12-05 22:53
浏览 57

Go和C可执行文件之间的大小差异很大

This question already has an answer here:

I tried Go tonight, and upon building a very simple program I noticed the file size of the executable was much larger than it would be in C.

A simple hello world program in Go is 1.5mb after being built:

package main

import "fmt"

func main() {
    fmt.Println("hello world")
}

And here it is in C, which is much smaller at 4.9kb

#include <stdio.h>

int main(int argc, char** argv)
{
    printf("Hello World
");
    return 1;
}

Why the large size difference if both are being compiled to machine code?

Edit: I am not asking how to reduce the size of the executable, I am asking why it's larger.

</div>
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
    • ¥15 cmd cl 0x000007b
    • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
    • ¥500 火焰左右视图、视差(基于双目相机)
    • ¥100 set_link_state
    • ¥15 虚幻5 UE美术毛发渲染
    • ¥15 CVRP 图论 物流运输优化
    • ¥15 Tableau online 嵌入ppt失败
    • ¥100 支付宝网页转账系统不识别账号
    • ¥15 基于单片机的靶位控制系统