c51语言输出函数
怎么解决c51混合编程时调用printf报错?sprintf也会
C标准没有输出二进制的,不过用itoa()可以实现到二进的转换.
①.、在C语言程序中,可以使用标准库函数中printf()来向屏幕输出信息,或者使用sprintf()向缓冲区输出信息.对整数而言,可以使用%d、%o、%x(或%X)输出十进制形式、八进制、十六进制形式,但貌似缺乏二进制形式.
代码一:
/** Test.h */
#pragma once
#ifndef Test_H
#define Test_H
/** use itoa() to print integers in the form of binary
* @param[in] n the integer to print
* @return void
*/
void printBinaryByItoa(unsigned int n);
代码二:
/** Test.c */
#include stdio.h
#include stdlib.h
void printBinaryByItoa(unsigned int n)
{
printf("%sb\n", data);
}
void printBinary(unsigned int n, unsigned char separator, unsigned char needPrefixZeros)
unsigned int i = 0;
unsigned int mask = 0; /* the mask code to get each bit of n */
unsigned int index = 0; /* used to access data[] */
unsigned int start = 0; /* to point out where and when to store bits of n */
keil c51仿真时,怎样使用printf函数输出一个两位16进制数?
c51中 printf怎用
是这样的,keil的stdio.h提供了一堆函数,大致分两类,一类是通过串口在上位机上输入输出,另一类是指定一个指针变量,向其输入输出,这样便可以将得到的字符数组指针的内容输出到LCD一类设备上了,也可通过指针获得按键输入.
对于一类,你必须得软件初始化串口,硬件与电脑连接好,然后利用windows的超级终端就可以显示单片机中程序里的printf等函数打印出的内容了,你也可以使用getchar获得超级终端的按键码.(当然也可以使用串口助手之类软件代替超级终端,注意波特率,数据位,校验位,等设置要保持一致)
对于第二类,是不用初始化串口的,因为跟串口没任何关系,你只要用指针虚拟设备就可以了,输入输出都是你自己做的硬件.
附串口初始化程序:
void UartInit(void){
TMOD = 0x0f;//清除定时器1模式位
TL1 = T1_INIT_VALUE;//设定定时初值
TH1 = T1_INIT_VALUE;//设定定时器重装值
ET1 = 0;//禁止定时器1中断
TR1 = 1;//启动定时器1
ES = 0;//禁止串行口中断
TI = 1; //必须置高TI,RI
RI = 1;
puts("Uart Initialize Success!");
//*.调用printf之前应该关闭串口中断使能
在C51语言编写中,我要输出数字整型,怎么个写法?
数据最大值可以确定,可以根据最大值定义一个ASCII数组,数组的每一个单元存放整形数据的一位.
发送前先对发送整形数组里的单元转换成ASCII数组,然后再按照通用的发送函数进行发送.
void InttoChar (uint IntNumber)
//---------------------------------------------------------
// Name: void InttoChar (int IntNumber)
// Func.: Translate integer to ASCII charactor array
// Char.: IntNumber number to be translated to ASCII charactor
if (IntNumber 10)
return;
if (IntNumber 100)
if (IntNumber 1000)
if (IntNumber 10000)
else
c51语言中,printf函数有什么用?
打印,就是输出一个语句!比如printf("Hello word!"); 里面可以是字符串,可以是变量!
C51的scanf()和printf()是做什么的?
printf()是以规定的格式向单片机的串口输出数据 原型如下: extern int printf (const char *, ...);
const char *是格式控制字符串指针,必须以%开始, %[flags][width][.precision]][modified] type
scanf()函数是依规定的格式从串口输入数据,extern int scanf( const char * , ....)
与printf相同其格式控制符需要以%开始,一一个格式字符结束,中间可以插入附加字符:
%[*][width][modifiers]type
以上就是源利百科网小编为大家整理的c51语言输出函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!
