C 库函数 int fputc(int char, FILE *stream) 将参数 char 指定的字符(无符号 char)写入指定的流,并推进流的位置指示器。
下面是 fputc() 函数的声明。
int fputc(int char, FILE *stream)
char − 这是要写的字符。这将作为其 int 升级传递。
stream − 这是指向 FILE 对象的指针,该对象标识要写入字符的流。
如果没有错误,则返回已写入的同一字符。如果发生错误,则返回 EOF 并设置错误指示器。
下面的示例演示 fputc() 函数的用法。
#include
int main () {
FILE *fp;
int ch;
fp = fopen("file.txt", "w+");
for( ch = 33 ; ch <= 100; ch++ ) {
fputc(ch, fp);
}
fclose(fp);
return(0);
}
下面将重定义为printf函数
///重定向c库函数printf到串口,重定向后可使用printf函数
int fputc(int ch, FILE *f)
{
/* 发送一个字节数据到串口 */
USART_SendData(USART3, (uint8_t) ch);
/* 等待发送完毕 */
while (USART_GetFlagStatus(USART3, USART_FLAG_TXE) == RESET);
return (ch);
}
///重定向c库函数scanf到串口,重写向后可使用scanf、getchar等函数
int fgetc(FILE *f)
{
/* 等待串口输入数据 */
while (USART_GetFlagStatus(USART3, USART_FLAG_RXNE) == RESET);
return (int)USART_ReceiveData(USART3);
}
全部0条评论
快来发表一下你的评论吧 !