如果超出太多就另想办法,例如更换单片机。 如果超出得不多,可以进行优化。这里又分为两种情况:如果你编程经验丰富,可以手动通过优化减小程序代码大小;如果你不太懂得如何手动优化,可尝试提高编译优化等级并优先针对代码大小进行优化,不过提高优化等级往往会带来更多的隐患,不建议这么做。 “对于程序中重复出现的指令,用子程序调用的方式是否能将程序大小改小?”你指的是重复代码段吧,某些优化等级下编译器已经自动进行了这种优化,这时再手动合并重复代码段有时反而会导致代码大小增大……需要具体试验进行。记得多备份。 “是不是说 程序的代码行数越少,这个程序的所占的空间大小会越小?”完全不是这么回事,某些时候一行C程序可能会编译出很长的汇编代码,尤其是那些卖弄C语言技巧的家伙们。我之前看过一个例子是某个家伙写的一行高度紧凑的语句编译出了数百字节。当然如果不幸调用了库函数会使得代码大小迅速膨胀。
|