【发布时间】:2026-02-02 05:55:01
【问题描述】:
我正在尝试为内存非常有限的嵌入式编程目的编写一些 C 代码,我需要尽可能减少代码大小。
那么我有几个关于代码大小的问题
1. does length of variable name matter for code size?
Is it good to keep variable name short for embedded programming?
2. Does each letter count as 1 byte for actual code size?
for ex. 'if' statement, is it counted as 2 byte?
when code to loaded to memory is prepared how letters including key words count?
【问题讨论】:
-
这两方面都没有。你知道编译器的工作原理和机器码是什么吗?
-
大多数编译器都提供了一个选项来发出生成的汇编代码(例如,使用 gcc 是 -S 选项 - 讨论了here)。这可以帮助您了解您的 C 代码是如何被翻译成机器指令的。
-
正如 Thilo 所指出的,您对 C 编译器如何工作的假设是不正确的。内存有多大限制?当前代码/数据/堆栈/堆的细分是什么?
-
'我对编译器和机器码不是很熟悉' - 你无法执行这个任务。
-
我强烈建议任何程序员学习一些汇编程序或与硬件相关的编程,以了解计算机和程序在现实中是如何工作的,而不是高级语言。