tc和vc++为什么结果不一样?
printf("*\t\b*");这个语句在tc和vc++里的结果为什么会不一样?
搜索更多相关的解决方案:
结果
----------------解决方案--------------------------------------------------------
编译器不同,
----------------解决方案--------------------------------------------------------
恩,可是这个又怎么解释呢?
#include<iostream>
using namespace std;
int main()
{
cout<<"*\t\b*"<<endl;
printf("1234567890\n");
return 0;
}
用同一个编译器为什么还是不一样?
----------------解决方案--------------------------------------------------------
#include<iostream>
using namespace std;
int main()
{
cout<<"*\t\b*"<<endl;
printf("*\t\b*\n");
printf("1234567890\n");
return 0;
}
呵呵,上面那个少了点什么!
----------------解决方案--------------------------------------------------------
应该是\b的问题,C与C++实现的不同;
VC中,printf()使用\b,退回一个空格(BACKESPACE),由于在这之前是\t,一个空格就指一个TAP键,如果前面不是\t,情况就不同了,你可以在WORD文档中试下,TAB,BACKSPACE;
cout不同,\b退格,仅退回一个字符的位置;
----------------解决方案--------------------------------------------------------
嘿嘿,学习了。
----------------解决方案--------------------------------------------------------