tvprintf.c

来自「单片及c语言轻松入门的随书光盘」· C语言 代码 · 共 28 行

C
28
字号
#include <reg52.h>
#include <stdio.h>
#include <stdarg.h>
void error (char *fmt, ...) {
	va_list arg_ptr;
	va_start (arg_ptr, fmt); /* format string */
	vprintf (fmt, arg_ptr);
	va_end (arg_ptr);
	}
void tst_vprintf (void) {
	int i;
	i = 1000;
	/* 使用1个参数调用error函数*/
	error ("Error: '%d' number too large\n", i);
	/*仅用格式化字符来调用error函数*/
	error ("Syntax Error\n");
}
void main()
{
	SCON  = 0x50;    /*SCON:工作模式1,8-bit UART,允许接收*/
	TMOD |= 0x20;    /*TMOD:定时器T1,工作模式2, 8位自动重载方式*/
	TH1   = 0xf3;    /*当波特率为2400时,定时器初值*/
	TR1   = 1;       /*定时器T1开始运行*/
	TI    = 1;       /*允许发送数据*/
	for(;;)
		tst_vprintf();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?