printf()功能很强大, 但也因此又慢(执行速度)又大(code size).
若程式只需要单纯的印出字串, 通常做法是写一个精简版本替代printf(),
void out_str(char * s)
{
while(*s) {
putchar(*s);
++s;
}
}
接下来只要把程式中的printf改成out_str即可
void main(void)
{
out_str("hello, world");
}
※ 引述《mosquito520 ( )》之铭言:
: → ksmrt0123:我很疑惑怎样的code是'丑'但效能好的? 请问有例子吗? 09/10 00:18
常见的写法
#include <stdio.h>
#include <8051.h>
void putchar(char ch){
while(!TI);
TI = 0;
SBUF = ch;
}
void main(void)
{
printf("hello, world");
}
SDCC编译出来的结果
Other memory:
Name Start End Size Max