Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C '\n';?_C_Stm32 - Fatal编程技术网

C '\n';?

C '\n';?,c,stm32,C,Stm32,我造成了一种我真的不明白的效果: char buffer[6]; UINT i = adc_getADCValue(6); int j = 0; for ( j = 0 ;j <4;j++){ buffer[3-j] = (UINT) ((i%10UL)+'0'); i /=10; } buffer[4] = '\n'; buffer[5] = '\0'; localprint(buffer); // print messages on terminal using COM

我造成了一种我真的不明白的效果:

char buffer[6];
UINT i =  adc_getADCValue(6);

int j = 0;
for ( j = 0 ;j <4;j++){
buffer[3-j] = (UINT) ((i%10UL)+'0');
    i /=10;
}
buffer[4] = '\n';
buffer[5] = '\0';
localprint(buffer); // print  messages on terminal using COM port 
char缓冲区[6];
UINT i=adc_getadc值(6);
int j=0;

for(j=0;j
\n
是下一行(换行-LF),而
\r
是旧打印机上的回车(CR)

您的终端被配置为“la”窗口,其中下一行是CR+LF。因此,只发送LF到下一行,而不是开始

Unix通常只使用LF


更改终端的配置或将代码更改为使用
\n\r

这都是向后兼容性的问题。在Windows中,您需要使用
\r\n
而不是简单地使用
n
,这是UNIX做同样事情的方式


有关更多信息,请参见@Bruce的帖子。

改用
\r\n
。查看或更改油灰设置-单击“终端”下的,然后启用“每个LF中的隐式CR”,看看这是否解决了问题。@SolarBear谢谢你的评论,也谢谢psmears。如果你回答这个问题,我会接受itC大概有一些常量,你可以用来添加适合平台的EOL字符.@meagar-在这种情况下,执行平台和显示平台是不同的,因此编译器不能提供太多直接帮助,因为它不知道后者。虽然
\n\r
可以完成这项工作,
\r\n
更为常见。的确,常见的组合是CR+LF@Bruce感谢您的回答,但是\solarBear评论帮助了我第一个!